@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;800;900&display=swap');


/* reset */
*, *::before, *::after {
  box-sizing: border-box;
  outline: none;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
a.underline {
  padding-bottom:2px;
  border-bottom:1px solid;
}

input[type=text], input[type=email], input[type=tel], textarea {
  background: #fff;
  border: none;
  border-radius: 0;
  font: inherit;
  padding: 10px;
  outline: none;
  font-size: 16px;
  width:100%;
}
textarea {
  height:210px;
}
input[type=checkbox] {
  transform: scale(2.0);
  margin-right:10px;
}

textarea {
  resize: vertical;
}

input[type=submit], input[type=button], label, button, select {
  cursor: pointer;
}
input[type=submit]{
  display       : inline-block;
  border-radius : 5%;
  font-size     : 18px;
  text-align    : center;
  cursor        : pointer;
  padding       : 12px 12px;
  background    : #D00909;
  color         : #ffffff;
  line-height   : 1em;
  transition    : .3s;
  box-shadow    : none;
  border        : 2px solid #D00909;
}
input[type=submit]:hover {
  color         : #fff;
  background    : #D00909;
  border        : 2px solid #fff;
}
select::-ms-expand {
  display: none;
}

/* set */
html, body {
  width: 100%;
}

html {
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 62.5%;
}

body {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  line-height: 1.6;
  font-size: 1.25vw;
  background-color: #fff;
  background-image: linear-gradient(90deg, #A20009 0%, #B30006 5%, #C70003 13%, #D60001 22%, #DE0000 32%, #E10000 50%, #DE0000 68%, #D60001 78%, #C70003 87%, #B30006 95%, #A20009 100%);
  color: #fff;
  height: 100%;
  -webkit-text-size-adjust: 100%;
}

a {
  text-decoration: none;
  color: inherit;
  transition: 0.3s;
}
a img {
  transition: 0.3s;
}
a:hover {
  opacity: 0.7;
  transition: 0.3s;
}

li {
  list-style-type: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}

select {
  vertical-align: middle;
}

p {
  margin-bottom: 30px;
}
p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 769px) {
  body {
    font-size: 16px;
  }
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.small {font-size: 14px!important;font-weight: normal!important;line-height: 1.6!important;}

.blink {
	animation: blinking 1s ease-in-out infinite alternate;
}
 
@keyframes blinking {
	0% {opacity: 0;}
	100% {opacity: 1;}
}

/* 
------------------------------------------------------------------------------------------------------------------------
common
------------------------------------------------------------------------------------------------------------------------
*/
h2 {
  font-family: 'UnitedSans', sans-serif;
  font-size:62px;
  color:#D00909;
  line-height: 1;
}
h2 span {
  font-family: 'Noto Sans JP', sans-serif;
  font-size:16px;
  font-weight: bold;
  display: block;
}
.wrap {
  width:90%;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
}
.wraps {
  width:90%;
  max-width:1000px;
  margin-left:auto;
  margin-right:auto;
}
.btn a {
  font-size:18px;
  color: #D00909;
  background-color: #fff;
  padding: 15px 50px;
  border-radius: 8px;
  transition: 0.3s;
}
.btn a:hover {
  background-color: #D6B97D;
  opacity: 1;
  transition: 0.3s;
}
.in {
  display: none;
}
@media screen and (max-width: 769px) {
  .in {
    display: block;
  }
}

@media screen and (max-width: 769px) {
  br.in {
    display: inline-block;
  }
}

@media screen and (max-width: 769px) {
  .out {
    display: none!important;
  }
}
.anchor {
  margin-top: -6.25vw;
  padding-top: 6.25vw;
}


/* 
------------------------------------------------------------------------------------------------------------------------
footer
------------------------------------------------------------------------------------------------------------------------
*/
footer {
  background: #182D56;
}
footer div.foot_inner {
  width:90%;
  padding:75px 0 90px 0;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  color:#fff;
}
footer div.foot_inner div.left {
  width:17.06vw;
}
footer div.foot_inner div.right {
  width:calc(100% - 20vw);
  font-size:14px;
}
footer div.foot_inner div.right ul li {
  text-align: right;
}
footer div.foot_inner div.right ul li.copyright {
  margin-top:30px;
}
footer div.foot_inner div.right ul li a {
  position:relative;
  color:#fff;
  padding-right:20px;
  line-height: 2.2;
}
footer div.foot_inner div.right ul li a::after {
  position:absolute;
  right:0;
  top:5px;
  content: '';
  width:12.63px;
  height:12.63px;
  background-image: url(../img/icon_link.svg);
  background-repeat: no-repeat;
  background-size: cover;
}


@media screen and (max-width: 769px) {

  
  footer div.foot_inner {
    width:90%;
    padding:60px 0 40px 0;
    flex-direction: column;
    justify-content: center;
  }
  footer div.foot_inner div.left {
    width:73.6vw;
    margin-bottom:70px;
    text-align: center;
  }
  footer div.foot_inner div.left img {
    margin: auto;
  }
  footer div.foot_inner div.right {
    width:100%;
    font-size:14px;
  }
  footer div.foot_inner div.right ul li {
    text-align: center;
  }
  footer div.foot_inner div.right ul li.copyright {
    font-size:12px;
  }
  
}



/* 
------------------------------------------------------------------------------------------------------------------------
top
------------------------------------------------------------------------------------------------------------------------
*/

#top .mv {
  position: relative;
  width:100%;
  height:auto;
}
#top .mv h1 {
  position: absolute;
  top:4vw;
  left:3.5vw;
}
#top .mv h1 img {
  width:17.07vw;
}
#top .mv .mv_inner img {
  width:100%;
}
#top .mv p.catch {
  position: absolute;
  top:6.18055vw;
  right:7.29166vw;
  z-index:2;
}
#top .mv p.catch img {
  width:55.90277vw;
}
#top .mv p.drop {
  position: absolute;
  top:7.63889vw;
  left:3.47222vw;
  z-index:2;
}
#top .mv p.drop img {
  width:34.79166vw;
}
#top .mv p.photo {
  position: absolute;
  top:8.4027vw;
  left:3.47222vw;
  z-index:2;
}
#top .mv p.photo img {
  width:33.19444vw;
}
#top .mv p.present {
  position: absolute;
  top:31.25vw;
  right:2.673611vw;
  z-index:5;
}
#top .mv p.present img {
  width:58.75608vw;
}
#top .mv div.info {
  position: absolute;
  padding: 24px 5.6vw;
  bottom:0;
  left:0;
  z-index:1;
  background-color: #0D1D41; 
  width:100%;
  text-align: center;
}
#top .mv div.info img {
  width:45.69444vw;
  margin: auto;
}

#top div.lead {
  width:87%;
  max-width:1200px;
  margin:135px auto 0 auto;
  text-align: center;
  color: #fff;
  font-size:18px;
  line-height: 2;
}
#top div.lead p.ttl {
  text-align: center;
}
#top div.lead p.ttl img{
  width:47.15vw;
  margin: auto auto 100px auto;
}

#top div.sec02 {
  position: relative;
  background: url(../img/bg_sec02.webp), linear-gradient(0deg, #dac154 0%, #dac154 50%, transparent 50%, transparent 100%);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: top;
  padding-top:11.111111vw;
  padding-bottom:12.2152vw;
}
#top div.sec02 .sec02_top img {
  position: relative;
  width:77.7083vw;
  margin: auto;
  z-index: 5;
}
#top div.sec02 .sec02_drop01 {
  position: absolute;
  top:-2vw;
  left:2vw;
  width: 31.3194vw;
  z-index: 1;
}
#top div.sec02 .sec02_drop02 {
  position: absolute;
  top:4.0625vw;
  right:5.0277vw;
  width: 33.1944vw;
  z-index: 1;
}
#top div.sec02 h2 {
  text-align: center;
  margin-top: 6.6319vw;
}
#top div.sec02 h2 img {
  width:21.6666vw;
  margin: auto;
}
#top div.sec02 .sec02_present {
  margin-top:2.2222vw
}
#top div.sec02 .sec02_present img {
  width:67.8472vw;
  margin: auto;
}
#top div.sec02 p.midashi {
  color: #011E41;
  text-align: center;
  font-size: 2.2222vw;
  font-style: normal;
  font-weight: 800;
  margin-top:2.2222vw
}
#top div.sec02 .sec02_bottom {
  position: relative;
  margin:4.44vw auto 0 auto;
  width:78.8888vw;
}
#top div.sec02 .sec02_bottom .sec02_lead {
  position: absolute;
  top:50%;
  left:0;
  transform: translateY(-50%);
  width:40vw;
}
#top div.sec02 .sec02_bottom .sec02_ceo {
  width:49.9652vw;
  margin-right: 0;
  margin-left: auto;
}

#top div.sec03 {
  position: relative;
  background-image: url(../img/bg_sec03.png);
  background-repeat: no-repeat;
  background-size: 100%;
  padding-top:11.111111vw;
  margin-top:-19.5152vw;
  overflow: hidden;
}
#top div.sec03 h2 {
  text-align: center;
  margin-top: 6.6319vw;
}
#top div.sec03 h2 img {
  width:30.13888vw;
  margin: auto;
}
#top div.sec03 div.formbox {
  margin: 50px auto 0 auto;
  background-color: #fff;
  width:72.43vw;
  border-radius: 20px;
  padding:50px;
}
#top div.sec03 div.formbox iframe {
  width:100%;
  height:1800px;
}
#top div.sec03 p.sub {
  font-size:1.666666vw;
  font-weight:700;
  margin-bottom:40px;
}
#top div.sec03 dl.sec03_dl01 {
  margin-top:6.6319vw;
  display: flex;
  flex-wrap: wrap;
  color:#fff;
}
#top div.sec03 dl.sec03_dl01 dt {
  width:51.875vw
}
#top div.sec03 dl.sec03_dl01 dd {
  width:32.98611vw;
  margin-left:2vw;
}
#top div.sec03 dl.sec03_dl02 {
  margin-top:6.6319vw;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  justify-content: flex-end;
  color:#fff;
  margin-left:14.09722vw;
}
#top div.sec03 dl.sec03_dl02 dd {
  width:32.98611vw;
  margin-right:2vw;
}
#top div.sec03 dl.sec03_dl02 dt {
  width:44.8611vw;
}

#top div.sec04 {
  position: relative;
  background-image: url(../img/bg_sec04.png);
  background-color: #fff;
  background-repeat: no-repeat;
  background-size: 100%;
  padding-top:13.26388vw;
  padding-bottom:19.31944vw;
}
#top div.sec04 .sec04_drop {
  position:absolute;
  width:32.181944vw;
  top:14.86111vw;
  left:3.472222vw;
  z-index: 1;
}
#top div.sec04 .sec04_inner {
  position: relative;
  margin: 0 4.616666vw 0 14.5138vw;
  z-index: 2;
}
#top div.sec04 .sec04_inner_top {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  color:#182D56;
  margin-bottom:5vw;
}
#top div.sec04 .sec04_inner_top dt {
  color:#182D56;
  width:41.875vw;
}
#top div.sec04 h2 {
  margin-top:3vw;
  margin-bottom:60px;
}
#top div.sec04 .sec04_inner_top dd {
  width:35.41666vw;
}
#top div.sec04 .sec04_inner_middle {
  display: flex;
  flex-wrap: wrap;
  color:#182D56;
  margin-bottom:5vw;
}
#top div.sec04 .sec04_inner_middle dt {
  width:23.9638vw;
}
#top div.sec04 .sec04_inner_middle dd {
  width:45vw;
  margin-left:3.4vw;
}
#top div.sec04 .sec04_inner_middle p.tts {
  display: block;
  margin-bottom:3vw;
  height:2.77777vw;
}
#top div.sec04 .sec04_inner_middle p.tts img {
  width:auto;
  height:2.77777vw;
}
#top div.sec04 .sec04_inner_bottom {
  color:#182D56;
}
#top div.sec04 .sec04_inner_bottom dt {
  margin-bottom:3vw;
  display: flex;
  align-items: center;
}
#top div.sec04 .sec04_inner_bottom dt img.tts {
  width:auto;
  height:3.75vw;
}
#top div.sec04 .sec04_inner_bottom dt img.new {
  width:5.9097vw;
  height:auto;
  margin-left:1.5vw;
}

#top div.sec05 {
  position: relative;
  background-image: url(../img/bg_sec05.webp);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: top;
  padding-top:24.75694vw;
  padding-bottom:12.2152vw;
  margin-top:-27vw;
  z-index: 2;
}
#top div.sec05 .sec05_top {
  position: relative;
  margin-bottom:6.45833vw;
}
#top div.sec05 .sec05_top h2 {
  margin-left:9.79166vw;
  width:49.3vw;
}
#top div.sec05 .sec05_top .sec05_top_inner {
  position: relative;
  margin:-16.6875vw auto 0 14.305vw;
  width:82.9513vw;
}
#top div.sec05 .sec05_top .sec05_top_inner .lead {
  position: absolute;
  bottom:0;
  left:0;
  width:45.4861vw;
  text-align: left;
  font-size:2.2222vw;
  font-weight: 800;
}
#top div.sec05 .sec05_top .sec05_top_inner .lead img {
  margin-bottom:5vw;
}
#top div.sec05 .sec05_top .sec05_top_inner .photo {
  width:53.2976vw;
  margin-right: 0;
  margin-left: auto;
}
#top div.sec05 .sec05_top .youtube {
  width: 31.875vw;
  margin: 80px auto;
  aspect-ratio: 16 / 9;
}
#top div.sec05 .sec05_top .youtube iframe {
  width: 100%;
  height: 100%;
}
#top div.sec05 .sec05_middle .sec05_middle_inner {
  position: relative;
  margin:2vw auto 0 6.45833vw;
  width:79.30555vw;
}
#top div.sec05 .sec05_middle .sec05_middle_inner .lead {
  position: absolute;
  bottom:2vw;
  right:0;
  width:52.98611vw;
}
#top div.sec05 .sec05_middle .sec05_middle_inner .photo {
  width:53.2976vw;
  margin-right: auto;
  margin-left: 0;
}
#top div.sec05 .sec05_bottom {
  position: relative;
  margin:2vw auto 0 auto;
  width:72.01388vw;
}
#top div.sec05 .sec05_bottom ul {
  margin: 3vw 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top div.sec05 .sec05_bottom ul li {
  width:32%;
}


@media screen and (max-width: 769px) {

  
  #top .mv h1 {
    position: absolute;
    top:5.06666vw;
    left:auto;
    right:3.46666vw;
  }
  #top .mv h1 img {
    width:29.06666vw;
  }
  #top .mv p.catch01 {
    position: absolute;
    top:9.333333vw;
    left:6.93333vw;
    z-index:2;
  }
  #top .mv p.catch01 img {
    width:55.90277vw;
  }
  #top .mv p.catch02 {
    position: absolute;
    top:72.26666vw;
    right:3.8vw;
    z-index:5;
  }
  #top .mv p.catch02 img {
    width:93.3155vw;
  }
  #top .mv p.photo {
    position: absolute;
    width:71.1842vw;
    top:15.2vw;
    left:50%;
    transform: translateX(-50%);
    z-index:2;
  }
  #top .mv p.photo img {
    width:71.1842vw;
  }
  #top .mv p.present {
    position: absolute;
    top:auto;
    bottom:0;
    right:0vw;
    z-index:5;
  }
  #top .mv p.present img {
    width:100vw;
  }
  #top div.lead {
    margin-top:100px;
    margin-bottom:8vw;
    text-align: left;
  }
  #top div.lead p.ttl img{
    width:73.6vw;
    margin: auto auto 65px auto;
  }
  #top div.sec02 {
    background: url(../img/bg_sec02_sp.webp), linear-gradient(0deg, #dac154 0%, #dac154 50%, transparent 50%, transparent 100%);
    padding-top:15.3333vw;
    padding-bottom:25.2152vw;
  }
  #top div.sec02 .sec02_top img {
    width:90vw;
    margin: 6vw auto 0 auto;
  }
  #top div.sec02 .sec02_drop02 {
    top:-8vw;
    right:-17.4285vw;
    width: 94.57142vw;
  }
  #top div.sec02 h2 img {
    width:44.3971vw;
  }
  #top div.sec02 .sec02_present img {
    width:60vw;
  }
  #top div.sec02 p.midashi {
    font-size: 6.8571vw;
  }
  #top div.sec02 .sec02_bottom {
    position: relative;
    margin:4.44vw 0 0 auto;
    width:90vw;
    overflow: hidden;
  }
  #top div.sec02 .sec02_bottom .sec02_lead {
    top:auto;
    bottom:0;
    transform: translateY(0);
    width:87.1428vw;
  }
  #top div.sec02 .sec02_bottom .sec02_ceo {
    width:105.6474vw;
    margin-bottom:16.2666vw;
  }

  #top div.sec03 {
    position: relative;
    background-image: url(../img/bg_sec03_sp.png);
    padding-top:11.111111vw;
    margin-top:-26.5152vw;
  }
  #top div.sec03 h2 {
    text-align: center;
    margin-top: 6.6319vw;
  }
  #top div.sec03 h2 img {
    width:44.3971vw;
  }
  #top div.sec03 div.formbox {
    width:90vw;
    padding:5px;
  }
  #top div.sec03 div.formbox iframe {
    width:100%;
    height:3600px;
  }
  #top div.sec03 p.sub {
    font-size:6.4vw;
    font-weight: normal;
  }
  #top div.sec03 dl.sec03_dl01 {
    margin-top:6.6319vw;
    display: block;
    color:#fff;
  }
  #top div.sec03 dl.sec03_dl01 dt {
    width:118.7142vw;
    margin-left:5vw;
    margin-bottom:5vw;
  }
  #top div.sec03 dl.sec03_dl01 dd {
    width:90vw;
    margin-left:5vw;
  }
  #top div.sec03 dl.sec03_dl02 {
    margin-top:12vw;
    margin-left:0;
    display: block;
  }
  #top div.sec03 dl.sec03_dl02 dt {
    width:90vw;
    margin-left:-10vw;
    margin-bottom:5vw;
  }
  #top div.sec03 dl.sec03_dl02 dd {
    width:90vw;
    margin-left:5vw;
  }

  #top div.sec04 {
    background-image: url(../img/bg_sec04_sp.png);
    padding-top:25.4666vw;
    padding-bottom:34.31944vw;
    overflow: hidden;
  }
  #top div.sec04 .sec04_drop {
    position:absolute;
    width:47.4666vw;
    top:22.86111vw;
    left:-3vw;
    z-index: 1;
  }
  #top div.sec04 .sec04_inner {
    position: relative;
    margin: 0 5vw 0 5vw;
    z-index: 2;
  }
  #top div.sec04 .sec04_inner_top {
    display: block;
    color:#182D56;
    margin-top:16vw;
    margin-bottom:5vw;
  }
  #top div.sec04 .sec04_inner_top dt {
    color:#182D56;
    width:85vw;
  }
  #top div.sec04 h2 {
    margin-top:5vw;
    margin-bottom:60px;
  }
  #top div.sec04 .sec04_inner_top dd {
    width:85vw;
    margin: 5vw auto 0 auto;
  }
  #top div.sec04 .sec04_inner_top dd img {
    width:85%;
    margin: 0 auto 0 auto;
  }
  #top div.sec04 .sec04_inner_middle {
    display: block;
    margin-top:15vw;
    margin-bottom:5vw;
  }
  #top div.sec04 .sec04_inner_middle dt {
    width:100%;
    margin-bottom:15vw;
  }
  #top div.sec04 .sec04_inner_middle dd {
    width:100%;
    margin-left:0;
  }
  #top div.sec04 .sec04_inner_middle p.tts {
    display: inline-block;
    height:9.0666vw;
    margin-bottom:10vw;
  }
  #top div.sec04 .sec04_inner_middle p.tts img {
    width:auto;
    height:9.0666vw;
  }
  #top div.sec04 .sec04_inner_bottom {
    color:#182D56;
    margin-top:15vw;
  }
  #top div.sec04 .sec04_inner_bottom dt {
    margin-bottom:3vw;
    display: flex;
    align-items: center;
  }
  #top div.sec04 .sec04_inner_bottom dt img.tts {
    width:auto;
    height:10.05333vw;
  }
  #top div.sec04 .sec04_inner_bottom dt img.new {
    width:14.1333vw;
  }

  #top div.sec05 {
    position: relative;
    padding-top:36.13333vw;
    padding-bottom:12.2152vw;
    margin-top:-27vw;
  }
  #top div.sec05 .sec05_top h2 {
    margin-left:2vw;
    width:85.3333vw;
  }
  #top div.sec05 .sec05_top .sec05_top_inner {
    position: relative;
    margin:5vw 0 0 auto;
    width:95vw;
  }
  #top div.sec05 .sec05_top .sec05_top_inner .lead {
    position: static;
    width:90vw;
    font-size:8vw;
    margin-top:-5vw;
  }
  #top div.sec05 .sec05_top .sec05_top_inner .lead img {
    margin-bottom:5vw;
  }
  #top div.sec05 .sec05_top .sec05_top_inner .photo {
    width:85vw;
    margin-right: 0;
    margin-left: auto;
  }
  #top div.sec05 .sec05_top .youtube {
    width: 84vw;
    margin: 5vw auto;
    aspect-ratio: 16 / 9;
  }
  #top div.sec05 .sec05_top .youtube iframe {
    width: 100%;
    height: 100%;
  }
  #top div.sec05 .sec05_middle .sec05_middle_inner {
    position: relative;
    margin:2vw auto 0 0;
    width:95vw;
  }
  #top div.sec05 .sec05_middle .sec05_middle_inner .lead {
    position: static;
    width:90vw;
    margin-top:-5vw;
  }
  #top div.sec05 .sec05_middle .sec05_middle_inner .photo {
    width:85vw;
    margin-right: auto;
    margin-left: 0;
  }
  #top div.sec05 .sec05_bottom {
    position: relative;
    margin:2vw auto 0 auto;
    width:85vw;
  }
  #top div.sec05 .sec05_bottom ul {
    margin: 10vw 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #top div.sec05 .sec05_bottom ul li {
    width:100%;
  }
  #top div.sec05 .sec05_bottom ul li + li {
    margin-top:4vw;
  }
  #top div.sec05 .sec05_bottom ul li:last-child {
    display: none;
  }
  #top div.sec05 .sec05_bottom p.last {
    margin-top:10vw;
  }
  
}

