@charset "utf-8";

body {
  font-size: 20px;
  line-height: 1.5em;
  font-family: 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
  overflow-wrap: break-word;
  word-break: normal;
  color: #333;
}

::selection {
  background: #527c8d;
  color: #fff;
}

img {
  width: auto;
  height: auto;
  max-width: 100%;
}

p {
  line-height: 1.9em;
  margin-bottom: 1.8em;
}

.big{
  font-size: 40px;
  line-height: 2.5em;
}

p:last-child {
  margin-bottom: 0;
}

.sp {
  display: none !important;
}

.red {
  color: #A31313;
}

.small {
  font-size: 0.8em;
}

.b {
  font-weight: 600;
}

.center {
  padding: 50px auto;
  display: block;
  margin: 0 auto;
  text-align: center;
}

.bg01 {
  margin: 0px auto 50px auto;
  padding: 70px 200px;
  text-align: center;
  background: #f8f8f8;
}

.bg02 {
  margin: 0 auto 50px auto;
  padding: 70px 200px;
  text-align: center;
  background: #003565;
}

.bg03 {
  margin: 50px auto 0 auto;
  padding: 50px 200px;
  text-align: center;
  background: #f8f8f8;
}

.bg04 {
  margin: 0 auto 50px 0;
  padding: 50px 200px 60px 200px;
  text-align: center;
  background: #edf3f9;
}

.bg03 img {
  display: block;
  margin: 50px auto;
}

.bg04 img{
  display: block;
  margin: 10px auto 20px auto;
}


.btn {
  max-width: 60%;
  text-align: center;
  display: block;
  margin: 50px auto 0 auto;
  text-align: center;
}

.btn-top {
  max-width: 60%;
  text-align: center;
  display: block;
  margin: auto;
  text-align: center;
}

/*header*/
header {
  background: url(../images/header-bg5.jpg) no-repeat;
  background-position: top center;
  height: 600px;
}

h1 {
  text-align: center;
  margin: auto;
  padding: 150px 0;
  width: 700px;

}

.movie{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin: 50px auto;
}

.movie iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


/*main*/
section {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 100px;
}

img {
  width: 100%;
}

.intro {
  font-size: 1.6em;
  text-align: center;
}

h2 {
  color: #003565;
  text-align: center;
  font-size: 1.9em;
  letter-spacing: 0.2em;
  font-weight: 600;
  line-height: 1.5em;
  padding: 40px 2%;
  max-width: 900px;
  margin: auto;
}

.arrow {
  display: block;
  margin: 0 auto 3% auto;
  animation: arrow 2s infinite;
  text-align: center;
}

/*line*/
.line ::selection {
  background: #eaf4e2;
}

.line {
  background: #eaf4e2;
  text-align: center;
  width: 95%;
  margin: 2% auto 0 auto;
}

h3 {
  text-align: center;
  font-size: 1.7em;
  font-weight: 600;
  line-height: 1.5em;
  color: #a4891c;
  border: solid 1px #a4891c;
  padding: 2%;
  margin: 3% auto;
}

.qr {
  display: block;
  margin: 0 auto;
  border: solid 2px #634D10;
}

.line .id {
  text-align: center;
  font-size: 1.7em;
  margin: 3% auto;
  padding-top: 3%;
}

.line .id span {
  border: solid 2px #CBCBCB;
  background: #fff;
  margin-left: 45px;
  padding: 2% 15%;
  letter-spacing: 0.1em;
}

.special {
  background: #f8f8f8;
  margin: 0 auto;
  padding: 50px 2%;
  margin: 0 auto;
}

.special img {
  margin: 0 auto;
}

/**/
dl {
  width: 90%;
  background: #fff;
  border: solid 2px #634D10;
  margin: 0 auto 5% auto;
  padding: 3%;
}

dl dt {
  color: #634D10;
  background: #F4F1E2;
  font-weight: 600;
  width: 35%;
  margin: 1% 3% 2% 0;
  padding: 1.3% 2.5%;
  font-size: 1.1em;
  display: inline-block;
  text-align: center;
}

dl dd {
  font-size: 1.1em;
  display: inline-block;
  width: 55%;
  font-weight: 600;
  padding-bottom: 1.1%;
  vertical-align: middle;
}

h4 {
  background: #F4F1E2;
  padding: 2%;
  color: #634D10;
  font-size: 1.1em;
  margin-bottom: 3%;
}

ol {
  list-style-type: decimal;
  margin-left: 5%;
  padding-bottom: 3%;
}

/*footer*/
footer {
  width: 100%;
  padding: 20px 0;
}

.footer-in {
  max-width: 1080px;
  margin: 0 auto;
}

footer p {
  text-align: center;
  font-size: 14px;
  color: #2c2c2c;
  margin-bottom: 0;
}

/*///media*/
@media screen and (max-width: 768px) {

  /*--- 表示領域が768px以下の場合に適用するスタイル ---*/
  body {
    font-size: 16px;
  }

  .sp {
    display: block !important;
  }

  .pc {
    display: none !important;
  }

  .big {
    font-size: 1.5em;
  }

  /*header*/
  header {
    background: url(../images/header-bg2.jpg) no-repeat;
    background-position: top center;
    background-size: 100%;
    height: 200px;
  }

  header h1 {
    padding: 40px 0;
    margin:0 auto;
    width:80%;

  }

  .btn-top {
    max-width: 100%;
    text-align: center;
    display: block;
    margin: 30px 0;
    text-align: center;
  }

  /*main*/
  section {
    padding: 30px 20px;
  }

  .present {
    padding: 20px 0;
  }

  .bg01 {
    margin: 30px 0;
    padding: 0;
    text-align: center;
    background: #f8f8f8;
  }

  .bg02 {
    margin: 0px 0 30px 0;
    padding: 20px 0 40px 0;
    text-align: center;
    background: #003565;
  }

  .bg03 {
    margin: 30px 0 20px 0;
    padding: 0 0 50px 0;
    text-align: center;
  }

  .bg04 {
    margin: 20px 0 0 0;
    padding: 30px 20px;
    text-align: center;
  }

.bg04 img{
  display: block;
  margin: 10px auto 20px auto;
}
  .bg03 img {
    display: block;
    margin: 0 auto;
  }

  .btn {
    max-width: 100%;
    display: block;
    padding: 0 20px;
    margin: auto;
    text-align: center;
  }

  .intro {
    font-size: 1.3em;
  }

  h2, h3 {
    padding: 20px 0;
    font-size: 1.3em;
    letter-spacing: 0em;
  }

  /*tktn*/
  .tktn {
    background-size: 25%;
  }

  .arrow {
    width: 15%;
    margin: -2% auto 5% auto;
  }

  dl dt, dl dd {
    width: 100%;
    padding: 2% 0;
    text-align: center;
  }

  .movie{
  	position: relative;
  	width: 100%;
  	padding-top: 56.25%;
  	margin: 20px auto;
  }

  iframe{
      width: 100%;
      margin: 20px auto;
      padding: 0;
  }

}



/*///media*/
