@charset "UTF-8";
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}

.clearfix:after{
    content: ".";
    display: block;
    height: 0;
    font-size:0;
    clear: both;
visibility:hidden;
}
.clearfix{ display: inline-block; }
/* Hides from IE Mac */
* { box-sizing: border-box;}
* html .clearfix{ height: 1%; }
.clearfix{ display:block; }

/* ---------- 初期 ---------- */
body { letter-spacing: 0.01em; font-family: 'Noto Sans JP', sans-serif; -webkit-text-size-adjust: 100%;}
img { max-width: 100%; width: 100%;}
a { text-decoration: none;}
strong { font-weight: bold;}
/* ---------- /共通部分 ---------- */
#jougetyuou { position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit-transform: translateY(-50%) translateX(-50%); margin: auto;}
#kadomaru { border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px;}
#resbtn { -webkit-appearance: none;}
#gurade { background: -moz-linear-gradient(開始位置, 開始色, 終了色); 
background: -webkit-linear-gradient(開始位置, 開始色, 終了色); 
background: linear-gradient(to 方向, 開始色, 終了色); }
.ancr { position: relative; transition: 0.5s;}
.anca { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; z-index: 10; cursor: pointer;}
.ancr:hover { opacity: 0.75; transition: 0.5s; cursor: pointer;}
/* ---------- /参考タグ部分 ---------- */


@keyframes arrowmove{
      0%{bottom: 4.28vw;}
      50%{bottom: 5.28vw;}
     100%{bottom: 4.28vw;}
 }
@keyframes fadezoom {
  0% {
    transform: scale(1.15);
  }

  100% {
    transform: scale(1);
  }
}

.youtube {
	margin: 0 auto;
	margin-bottom: 80px;
	margin-top: 50px;
	max-width: 100%;
	width:50%;
	aspect-ratio: 16/9;
    }
    
.youtube:hover { cursor: pointer;}

/* PC */
@media screen and (min-width: 769px) {
	.sponly { display: none!important;}
	.wrap { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
	h2.sec-ttl { font-size: 72px; font-weight: 900; line-height: 1.5em;}
	h3.sec-subttl { font-size: 24px; font-weight: bold; line-height:  1.66em; align-self: center;}
	.txt { font-size: 16px; line-height: 2em;}
	
	header { width: 100%; height: 80px; position: fixed; top: 0; left: 0; background: #000; z-index: 999; font-family: 'Noto Sans JP', sans-serif!important;}
	header .header_inner { margin: 0 auto; height: 100%; padding-left: 20px;}
	header .header_inner .header_logo { width: 240px; margin-right: 22px; align-self: center; line-height: 0;}
	header .header_inner .header_left { outline: none; text-decoration: none; vertical-align: middle;}
	header .header_inner .header_left img { border: 0;}
	header .header_inner .header_txt { font-size: 32px; font-weight: 900; align-self: center; outline: none;text-decoration: none; color: #fff; margin-bottom: 0;  font-family: 'Noto Sans JP', sans-serif; line-height: 1; letter-spacing: 0;}
	header .header_inner .float_nav { position: relative;}
	header .header_inner .float_nav::before { position: absolute; content: ''; width: 100%; height: 100%; background: #fff; top: 0; left: 0;z-index: -1;}
	header .header_inner .link-btn { width: 123px; text-align: center; font-size: 14px; line-height: 1.2em; color: #fff; height: 100%; font-weight: bold; text-decoration: none;  font-family: 'Noto Sans JP', sans-serif;}
	header .header_inner .link-btn:hover { opacity: .73; transition: all .4s;}
	header .header_inner .link-btn.siryou { background: url("../img/icon_book.svg")no-repeat left 48px top 17.6px/28px; background-color: #306FBF; padding-top: 45px;}
	header .header_inner .link-btn.oc { background: url("../img/icon_oc.svg")no-repeat left 45px top 7px/32px; background-color: #75B544; padding-top: 38px;}
	header .header_inner .link-btn.os { background: url("../img/icon_arrow.svg")no-repeat left 51px top 54px/16px; background-color: #000; padding-top: 12px; font-size: 16px;}
	
	#mv { width: 100%; margin-top: 80px; background: #000;}
	#mv .mv_inner { position: relative; width: 100%; height: 100%; overflow: hidden;}
	#mv .mv_img { }
	#mv .mv_img img { width: 100%; height: auto; object-fit: cover;}
	#mv .mv_txt { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; -weblit-transform: translate(-50%,-50%); text-align: center; display: block; color: #fff; font-size: 7.14vw; font-weight: 900;}
	#mv .mv_scroll { font-size: 16px; font-weight: bold; color: #fff; position: absolute; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); bottom: 4.28vw; padding-bottom: 35px; background: url("../img/arrow_bottom.svg")no-repeat bottom/20px;  animation: arrowmove 1s ease-in-out infinite;}
	#mv .mv_scroll span { transform: rotate(180deg); -webkit-transform: rotate(180deg); display: inline-block; writing-mode: vertical-rl; line-height: 1.3em;}
	.slick-animation { animation: fadezoom 6s ease-out;}
	.slider-progress { width: 100%; height: 2px; background: transparent;}
	.slider-progress .progress { width: 0%; height: 2px; background: #fff;}
	
	
	#sec01 { background: #000; color: #fff; margin-top: 0%;}
	#sec01 .sec01_inner { padding-bottom: 16px;}
	#sec01 .sec01_inner .sec01_top-box { padding: 90px 0; max-width: 1200px; width: 85.71%; margin: 0 auto; }
	#sec01 .sec01_inner .sec01_top-box h2 { align-self: center;}
	#sec01 .sec01_inner .sec01_wrapper { max-width: 1200px; width: 85.71%; margin: 0 auto;}
	#sec01 .sec01_inner .sec01_box { width: 33.334%;}
	#sec01 .sec01_inner .sec01_box .sec01_txt-box { padding: 38px 0 60px;}
	#sec01 .sec01_inner .sec01_box:nth-child(1) .sec01_txt-box { padding-right: 6%;}
	#sec01 .sec01_inner .sec01_box:nth-child(3) .sec01_txt-box { padding-left: 6%;}
	#sec01 .sec01_inner .sec01_box h3 { line-height: 1.71em; font-size: 28px; font-weight: 900; margin-bottom: 22px;}
	
	#sec02 {max-width: 1400px; margin: 0 auto;}
	#sec02 .sec02_inner { width:  85.71%; margin: 0 auto; max-width: 1200px;}
	#sec02 .sec02_inner .sec02_top-box {  padding: 91px 0 72px; justify-content: flex-start;}
	#sec02 .sec02_inner .sec02_top-box h2 {  margin-right: 5.9%;}
	#sec02 .sec02_inner h3 { align-self: center;}
	#sec02 .sec02_inner .sec02_wrapper-01 { margin-bottom: 80px;}
	#sec02 .sec02_inner .sec02_wrapper-01 .sec02_box-left { position: relative; width: 39.91%;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .sec02_img-01 { margin-top: -10px;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .name-box { color: #fff; background: #000; position: absolute; top: 0; left: 0; width: 100%; z-index: -1; padding: 312px 9.83% 2% 8.35%;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .name-box .name { font-size: 20px; font-weight: bold; line-height: 1.6em; margin-bottom: 24px;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .name-box .licence { font-size: 16px; font-weight: bold; line-height: 2em;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-right { width: 57.08%;}
	#sec02 .sec02_inner .sec02_wrapper .txt-top { font-size: 24px; font-weight: 900; line-height: 1.66em;}
	#sec02 .sec02_inner .sec02_wrapper .txt { line-height: 2.25em;}
	#sec02 .sec02_inner .label { font-size: 28px; color: #fff; background: #000; display: block; position: relative; padding: 16px 0 16px 20px; font-weight: bold; margin-bottom: 30px;}
	#sec02 .sec02_inner .label::before { position: absolute; content: ''; background: #306FBF; border: 2px solid #000; width: 100%; height: 100%; top: 4px; left: 4px; z-index: -1;}
	#sec02 .sec02_inner .label-b::before { background: #306FBF;}
	#sec02 .sec02_inner .label-g::before { background: #75B544;}
	#sec02 .sec02_inner .label-o::before { background: #f7b12f;}
	#sec02 .sec02_inner .sec02_wrapper-02 { margin-bottom: 56px;}
	#sec02 .sec02_inner .sec02_wrapper-02 .sec02_box-left { width: 57.08%;}
	#sec02 .sec02_inner .sec02_wrapper-02 .sec02_right { width: 39.91%; align-self: center;}
	#sec02 .sec02_inner .sec02_wrapper-02 .sec02_right .txt { font-weight: bold; text-align: right;}
	#sec02 .sec02_inner .btn-box { text-align: center; margin-bottom: 80px;}
	#sec02 .sec02_inner .btn-box a {  line-height: 3em; font-size: 20px; color: #fff; border-radius: 30px; text-align: center; background: url("../img/btn-b-arrow.svg")no-repeat right 28px top 51%/14.25px; display: inline-block; width: 376px;}
	#sec02 .sec02_inner .btn-box a.btn-b { background-color: #306FBF; border: 2px solid #306FBF;}
	#sec02 .sec02_inner .btn-box a.btn-b:hover { background-image: url("../img/btn_arrow_blue.svg"); background-color: #fff; border: 2px solid #306FBF; color: #306FBF;}
	#sec02 .sec02_inner .btn-box a.btn-g {  background-color: #75B544; border: 2px solid #75B544;}
	#sec02 .sec02_inner .btn-box a.btn-g:hover {  background-image: url("../img/btn_arrow_green.svg"); background-color: #fff; border: 2px solid #75B544; color: #75B544;}
	
	.youtube { position: relative;}
	.youtubebtn { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 58px; height: 41px;}
	.movie_txt { text-align: center; margin-bottom: 60px; font-size: 24px; font-weight: 600;}
	
	#sec03 { background: #000;}
	#sec03 .sec03_inner { max-width: 1200px; margin: 0 auto; width: 85.71%; color: #fff; padding-bottom: 20px;}
	#sec03 .sec03_inner .sec03_top-box { padding: 90px 0 75px;}
	#sec03 .sec03_inner .sec03_wrapper { width: 100%; margin: 0 auto 80px;}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box { width: 31.33%;}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box h3 { font-size: 24px; font-weight: 900; margin: 20px 0; line-height: 1.66em;}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box .txt { font-weight: 900; line-height: 1.75em; margin-bottom: 40px;}
	#sec03 .sec03_inner .btn-box { text-align: center;}
	#sec03 .sec03_inner .btn-box a {  line-height: 3.125em; font-size: 16px; color: #fff; border-radius: 25px; border: 2px solid #fff; text-align: center; background: url("../img/btn_arrow_right_white.svg")no-repeat right 25px top 51%/9.25px; display: inline-block; width: 59.3%; font-weight: bold;}
	#sec03 .sec03_inner .btn-box a:hover { color: #000; background-color: #fff; background-image: url("../img/sec03_arrow_on.svg");}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box--w100{
		width: 100%;
	}
	#sec03 .sec03_inner .sec03_wrapper .sec03_img{
		position: relative;
	}
	#sec03 .sec03_inner .sec03_wrapper .sec03_img-new{
		position:absolute;
		left:3%;
		top:0;
		background:#75B544;
		font-size:180%;
		font-weight:bold;
		padding:.6em 1.5em;
	}
	
	#sec04 { }
	#sec04 .sec04_inner { text-align: center; padding: 91px 0 0; max-width: 1200px; margin: 0 auto; width: 85.71%; padding-bottom: 106px;}
	#sec04 .sec04_inner h2 { margin-bottom: 16px;}
	#sec04 .sec04_inner h3 { margin-bottom: 40px;}
	#sec04 .sec04_inner .slider .slide { margin: 0 18px; text-align: left; position: relative;}
	#sec04 .sec04_inner .slider .slide-img { position: relative; border-radius: 10px; cursor: pointer;}
	#sec04 .sec04_inner .slider .slide-img img { border-radius: 10px;}
	#sec04 .sec04_inner .slider img.youtubebtn { position: absolute; width: 58px; height: 41px; top: 50%; left: 50%; transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); border-radius: 0;}
	.modal-video-close-btn {cursor: pointer;}
	#sec04 .sec04_inner .slider .slide .txt-02 { font-size: 18px; font-weight: 500; margin-top: 13.5px;}
	#sec04 .sec04_inner .slider .slide-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; z-index: 5; cursor: pointer;}
	#sec04 .sec04_inner .slider .next-arrow { right: 0;}
	#sec04 .sec04_inner .slider .prev-arrow { left: 0;}
	#sec04 .slick-dots { bottom: -68px;}
	#sec04 .slick-dots li button { color: #E4E4E4; border-radius: 50%; background: #E4E4E4; width: 12px; height: 12px;}
	#sec04 .slick-dots li.slick-active button{ color: #000; background: #000;}
	#sec04 .slick-dots li button::before { content: none;}
	
	#sec05 { background: #000; color: #fff;}
	#sec05 .sec05_inner { padding-bottom: 60px; position: relative;}
	#sec05 .sec05_inner::before { position: absolute; content: ''; background: url("../img/sankaku-black.svg")no-repeat center/cover; width: 88px; height: 40px; bottom: -39px; left: 50%; transform: translateX(-50%);}
	#sec05 .sec05_inner .sec05_top { position: relative;}
	#sec05 .sec05_inner .sec05_top::before { position: absolute; content: ''; background: url("../img/sankaku.svg")no-repeat center/cover; width: 6.288vw; height: 2.85vw; top: -0.1%; left: 50%; transform: translateX(-50%);}
	#sec05 .sec05_inner .sec05_bg { width: 100%; height: auto;}
	#sec05 .sec05_inner .sec05_bg img { width: 100%; height: auto;}
	#sec05 .sec05_inner .sec05_top-inner {position: absolute; top: 0; left: 0;color: #fff; padding-left: 7.14vw;}
	#sec05 .sec05_inner .sec05_top-inner .sec05_catch { font-weight: 900; font-size: 10vw; font-family: 'Roboto', sans-serif; padding: 10.35vw 0 0 ;}
	#sec05 .sec05_inner .sec05_top-inner .sec05_catch-02 { font-weight: 900; font-size: 2.57vw; padding: 2.21vw 0 0.6vw; width: 56.28vw; text-align: center; margin: 4.45vw 0 0.21vw; background: #000; border-top-left-radius: 1.42vw; border-top-right-radius: 1.42vw;}
	#sec05 .sec05_inner .sec05_wrapper { max-width: 1200px; margin: 60px auto; width: 85.71%;}
	#sec05 .sec05_inner .sec05_wrapper .sec05_box { width: 31.34%;}
	#sec05 .sec05_inner .sec05_wrapper .sec05_box .txt-02 { font-size: 18px; font-weight: 500; margin-top: 16px;}
	#sec05 .sec05_inner h3.sec05_wrapper { margin-bottom: 0; line-height: 1.66em; font-weight: bold; font-size: 24px;}
	
	#bottom-area { padding: 79px 0 70px; max-width: 788px; margin: 0 auto;}
	#bottom-area .btn-block { width: 100%; height: 200px; position: relative; margin-bottom: 50px;}
	#bottom-area .bottom-btn { width: 100%; height: 200px; border-radius: 20px; color: #fff; padding: 45px 0 32px; text-align: center;}
	#bottom-area .bottom-btn.bottom-btn-g { background: #75B544;}
	#bottom-area .bottom-btn.bottom-btn-b { background: #306FBF;}
	#bottom-area .btn-bg { position: absolute; width: 100%; height: 100%; border-radius: 20px; background: #000; top: 10px; left: 0; z-index: -1;}
	#bottom-area .bottom-btn:hover { cursor: pointer; transform: translateY(10px); opacity: 1;}
	#bottom-area .bottom-btn .btn-txt { font-weight: 900;font-size: 48px; text-align: center; margin-bottom: 15px; line-height: 1;}
	#bottom-area .bottom-btn .btn-b { }
	#bottom-area .bottom-btn .btn-b {  line-height: 3.15em; font-size: 19px; border-radius: 36px; text-align: center; background: url("../img/btn_arrow_right.svg")no-repeat right 28px top 51%/12.25px; display: inline-block; width: 325px; background-color: #fff; color: #000; font-weight: bold;}
	#bottom-area .bottom-btn:hover .btn-b { background-color: #000; background-image: url("../img/btn-b-arrow.svg"); color: #fff;}
	
	footer { font-family: 'Noto Sans JP', sans-serif!important;}
	footer .footer_inner { max-width: 1200px; width: 85.71%; margin: 0 auto;}
	footer .footer_inner .footer_logo { width: 28.89%; align-self: center;}
	footer .footer_inner .footer_info { width: 39.92%; align-self: center;line-height: 1.5em; flex-wrap: wrap;}
	footer .footer_inner .sns-list { width: 22.75%;align-self: center;}
	footer .footer_inner .sns-list li { width: 41px; margin-left: 17px;}
	footer .footer_inner .sns-list li:first-child { margin-left: 0;}
	footer .footer_bg { background-image: url("../img/footer_bg.png"); background-size: auto 100%; background-repeat: repeat-x; height: 94px; }
	footer .copy { background: #000; text-align: center; font-size: 14px; line-height: 2.85em; color: #fff; margin-top: -5px;}
	
	.page-top { position: fixed; bottom: 20px; right: 20px; width: 40px; height: 40px;}
}

/* SP */

@media screen and (max-width: 768px) {
	.pconly { display: none!important;}
	.spwrap { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
	h2.sec-ttl { font-size: 8.53vw; font-weight: 900; line-height: 1.5em;}
	h3.sec-subttl { font-size: 4.8vw; font-weight: bold; line-height:  1.77em; align-self: center;}
	.txt { font-size: 4.26vw; line-height: 2em;}

	header { position: fixed; top: 0; left: 0; z-index: 999; background: #000; width: 100%; height: 13.34vw; font-family: 'Noto Sans JP', sans-serif!important;}
	header .header_inner { padding-left: 2.67vw; padding-right: 10.67vw; width: 100%; height: 100%;}
	header .header_inner .header_left { width: 100%; height: 100%; align-items: center; outline: none; text-decoration: none;}
	header .header_inner .header_logo { width: 48vw; border: 0; align-self: center; line-height: 0;}
	header .header_inner .header_logo img { width: 100%;}
	header .header_inner .header_txt { font-size: 5.867vw; font-weight: 900; color: #fff; margin-bottom: 0; line-height: 1; letter-spacing: 0;}
	
	#mv { width: 100%; margin-top: 13.34vw; height: 96vw;}
	#mv .mv_inner { position: relative; width: 100%; height: 100%;}
	#mv .mv_img { width: 100%; height: 100%; }
	#mv .mv_img img { width: 100%; height: 96vw; object-fit: cover;}
	#mv .mv_txt { position: absolute; top: 50%;  transform: translateY(-50%); width: 100%; -weblit-transform: translate(-50%,-50%); text-align: center; display: block; color: #fff; font-size: 12.8vw; font-weight: 900;}
	#mv .mv_scroll { font-size: 4.26vw; font-weight: bold; color: #fff; position: absolute; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); bottom: 8vw; padding-bottom: 9.3vw; background: url("../img/arrow_bottom.svg")no-repeat bottom/5.3vw;  animation: arrowmove 1s ease-in-out infinite;}
	#mv .mv_scroll span { transform: rotate(180deg); -webkit-transform: rotate(180deg); display: inline-block; writing-mode: vertical-rl; line-height: 1.3em;}
	.slick-animation { animation: fadezoom 6s ease-out;}
	.slider-progress {  width: 100%;  height: 0.26vw;  background: transparent;}
	.slider-progress .progress {  width: 0%;  height: 0.26vw;  background: #fff;}
	
	#sec01 { background: #000; color: #fff; margin-top:0;}
	#sec01 .sec01_inner { }
	#sec01 .sec01_inner .sec01_top-box { padding: 10.4vw 0 9.06vw; width: 88vw; margin: 0 auto; text-align: center;}
	#sec01 .sec01_inner .sec01_top-box h2 { align-self: center;}
	#sec01 .sec01_inner .sec01_wrapper { width: 100%; max-width: 1400px; margin: 0 auto;}
	#sec01 .sec01_inner .sec01_box { width: 100%;}
	#sec01 .sec01_inner .sec01_box .sec01_img { height: 58.66vw; width: 100%; overflow: hidden;}
	#sec01 .sec01_inner .sec01_box .sec01_img img { width: 100%; height: 100%; object-fit: cover; }
	#sec01 .sec01_inner .sec01_box .sec01_txt-box { padding: 6.93vw 0 10.6vw; width: 88vw; margin: 0 auto;}
	#sec01 .sec01_inner .sec01_box .sec01_txt-box .txt { letter-spacing: 0.04em;}
	#sec01 .sec01_inner .sec01_box h3 { line-height: 1.71em; font-size: 5.34vw; font-weight: 900; margin-bottom: 5.33vw;}
	
	#sec02 { margin: 0 auto;}
	#sec02 .sec02_inner { width:  85.71%; margin: 0 auto;}
	#sec02 .sec02_inner .sec02_top-box {  padding: 10.4vw 0 8vw; text-align: center;}
	#sec02 .sec02_inner h3 { margin-top: 4.8vw;}
	#sec02 .sec02_inner .sec02_wrapper-01 { width: 88vw; margin: 0 auto 13.3vw;}
	#sec02 .sec02_inner .sec02_wrapper-01 .sec02_box-left { position: relative; width: 100%;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .sec02_img-01 { }
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .name-box { color: #fff; width: 100%; padding: 5.33vw 2.66vw 8.26vw; background: #000; text-align: center; margin-top: -1vw;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .name-box .name { font-size: 4.26vw; font-weight: bold; line-height: 1.75em; margin-bottom: 5.06vw;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-left .name-box .licence { font-size: 3.73vw; font-weight: bold; line-height: 1.71em;}
	#sec02 .sec02_inner .sec02_wrapper .sec02_box-right { width: 100%; margin-top: 8vw;}
	#sec02 .sec02_inner .sec02_wrapper .txt-top { font-size: 6.4vw; font-weight: 900; line-height: 1.66em; margin-bottom: 5.3vw;}
	#sec02 .sec02_inner .sec02_wrapper .txt { line-height: 2.25em; letter-spacing: 0;}
	#sec02 .sec02_inner .label { font-size: 5vw; color: #fff; background: #000; display: inline-block; line-height: 2.14em; position: relative; padding: 0 0 0 5.33vw; font-weight: bold; margin-bottom: 30px; width: 100%;}
	#sec02 .sec02_inner .label::before { position: absolute; content: ''; background: #306FBF; border: 0.53vw solid #000; width: 100%; height: 100%; top: 1.06vw; left: 1.06vw; z-index: -1;}
	#sec02 .sec02_inner .label-b::before { background: #306FBF;}
	#sec02 .sec02_inner .label-g::before { background: #75B544;}
	#sec02 .sec02_inner .label-o::before { background: #f7b12f;}
	#sec02 .sec02_inner .sec02_wrapper-02 { margin-bottom: 7.2vw; width: 100%;}
	#sec02 .sec02_inner .sec02_wrapper-02 .sec02_box-left { width: 100%; margin-bottom: 8vw;}a
	#sec02 .sec02_inner .sec02_wrapper-02 .sec02_right { width: 100%; align-self: center;}
	#sec02 .sec02_inner .sec02_wrapper-02 .sec02_right .txt { font-weight: bold; line-height: 1.5em; margin-top: 4vw;}
	#sec02 .sec02_inner .btn-box { text-align: center; margin-bottom: 13.33vw;}
	#sec02 .sec02_inner .btn-box a {  line-height: 3.125em; font-size: 4.26vw; color: #fff; border-radius: 6.66vw; text-align: center; background: url("../img/btn-b-arrow.svg")no-repeat right 5.6vw top 51%/2.66vw; display: inline-block; width: 72.8vw;}
	#sec02 .sec02_inner .btn-box a.btn-b { background-color: #306FBF; border: 0.53vw solid #306FBF;}
	#sec02 .sec02_inner .btn-box a.btn-b:hover { background-image: url("../img/btn_arrow_blue.svg"); background-color: #fff; border: 0.53vw solid #306FBF; color: #306FBF;}
	#sec02 .sec02_inner .btn-box a.btn-g {  background-color: #75B544; border: 0.53vw solid #75B544;}
	#sec02 .sec02_inner .btn-box a.btn-g:hover {  background-image: url("../img/btn_arrow_green.svg"); background-color: #fff; border: 0.53vw solid #75B544; color: #75B544;}
	
	#sec03 { background: #000;}
	#sec03 .sec03_inner { margin: 0 auto; width: 88vw; color: #fff; padding-bottom: 20px;}
	#sec03 .sec03_inner .sec03_top-box { padding: 10.4vw 0; text-align: center;}
	#sec03 .sec03_inner .sec03_wrapper { width: 100%; margin: 0 auto;}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box { width: 88vw; margin: 0 auto;}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box h3 { font-size: 5.3vw; font-weight: 900; margin: 5.3vw 0; line-height: 1.6em;}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box .txt { font-weight: 900; line-height: 1.75em; margin-bottom: 8vw;}
	#sec03 .sec03_inner .btn-box { text-align: center; margin-bottom: 16vw;}
	#sec03 .sec03_inner .btn-box a {  line-height: 3.125em; font-size: 4.26vw; color: #fff; border-radius: 6.6vw; border: 0.53vw solid #fff; text-align: center; background: url("../img/btn_arrow_right_white.svg")no-repeat right 6.13vw top 51%/2.4vw; display: inline-block; width: 59.46vw; font-weight: bold;}
	#sec03 .sec03_inner .btn-box a:hover { color: #000; background-color: #fff; background-image: url("../img/sec03_arrow_on.svg");}
	#sec03 .sec03_inner .sec03_wrapper .sec03_box--w100{
		width: 100%;
	}
	#sec03 .sec03_inner .sec03_wrapper .sec03_img{
		position: relative;
	}
	#sec03 .sec03_inner .sec03_wrapper .sec03_img-new{
		position:absolute;
		left:3%;
		top:0;
		background:#75B544;
		font-size:4vw;
		font-weight:bold;
		padding:.6em 1em;
	}
	
	#sec04 { }
	#sec04 .sec04_inner { text-align: center; padding: 13.06vw 0 0; width: 100%; padding-bottom: 13.86vw;}
	#sec04 .sec04_inner .sec04_top-box { margin: 0 auto; width: 88vw;}
	#sec04 .sec04_inner h2 { margin-bottom: 4.26vw; letter-spacing: 0; font-feature-settings: 'palt';}
	#sec04 .sec04_inner h3 { margin-bottom: 8vw;}
	#sec04 .sec04_inner .slider .slide { margin: 0 1.86vw; text-align: left;}
	#sec04 .sec04_inner .slider .slide-img { position: relative;}
	#sec04 .sec04_inner .slider img.youtubebtn { position: absolute; width: 8vw; height: 5.6vw; top: 50%; left: 50%; transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%);}
	#sec04 .sec04_inner .slider .slide .txt-02 { font-size: 4.26vw; font-weight: 500; margin-top: 3.2vw; line-height: 1.5em;}
	#sec04 .sec04_inner .slider .slide-arrow { position: absolute; top: 8vw; width: 7.46vw; height: 7.46vw; z-index: 5; cursor: pointer;}
	#sec04 .sec04_inner .slider .next-arrow { right: 23.2vw;}
	#sec04 .sec04_inner .slider .prev-arrow { left: 23.2vw;}
	#sec04 .slick-dots { bottom: -13vw;}
	#sec04 .slick-dots li button { color: #E4E4E4; border-radius: 50%; background: #E4E4E4; width: 3.2vw; height: 3.2vw;}
	#sec04 .slick-dots li.slick-active button{ color: #000; background: #000;}
	#sec04 .slick-dots li button::before { content: none;}
	
	#sec05 { background: #000; color: #fff;}
	#sec05 .sec05_inner { padding-bottom: 10vw; position: relative;}
	#sec05 .sec05_inner::before { position: absolute; content: ''; background: url("../img/sankaku-black.svg")no-repeat center/cover; width: 16vw; height: 7.44vw; bottom: -7.44vw; left: 50%; transform: translateX(-50%);}
	#sec05 .sec05_inner .sec05_top { position: relative;}
	#sec05 .sec05_inner .sec05_top::before { position: absolute; content: ''; background: url("../img/sankaku.svg")no-repeat center/cover; width: 16vw; height: 7.44vw; top: -0.1%; left: 50%; transform: translateX(-50%);}
	#sec05 .sec05_inner .sec05_bg { width: 100%; height: 64vw; overflow: hidden;}
	#sec05 .sec05_inner .sec05_bg img { width: 100%; height: 100%; object-fit: cover; object-position: center;}
	#sec05 .sec05_inner .sec05_top-inner {position: absolute; top: 0; left: 0; color: #fff; padding-left: 4.53vw;}
	#sec05 .sec05_inner .sec05_top-inner .sec05_catch { font-weight: 900; font-size: 16vw; font-family: 'Roboto', sans-serif; padding: 21.26vw 0 0 ;}
	#sec05 .sec05_inner .sec05_top-inner .sec05_catch-02 { font-weight: 900; font-size: 5.33vw; padding: 4.6vw 0 0.6vw; width: 88vw; text-align: center; margin: 1vw auto -5.33vw; background: #000; border-top-left-radius: 2.6vw; border-top-right-radius: 2.6vw; line-height: 1.4em;}
	#sec05 .sec05_inner .sec05_wrapper { margin: 14.4vw auto 0; width: 88vw;}
	#sec05 .sec05_inner .sec05_wrapper .sec05_box { width: 100%; margin-bottom: 6.13vw;}
	#sec05 .sec05_inner .sec05_wrapper .sec05_box .txt-02 { font-size: 4.26vw; font-weight: 500; margin-top: 2.4vw;}
	#sec05 .sec05_inner h3.sec05_wrapper { margin-bottom: 0; line-height: 2em; font-weight: bold; font-size: 4.26vw; margin-top: 8.8vw;}
	
	#bottom-area { padding: 15.2vw 0 14.13vw; width: 88vw; margin: 0 auto;}
	#bottom-area .btn-block { width: 100%; min-height: 46.77vw; position: relative; margin-bottom: 7.73vw;}
	#bottom-area .bottom-btn { width: 100%; height: 100%; border-radius: 5.33vw; color: #fff; padding: 10.4vw 0 8vw; text-align: center;}
	#bottom-area .bottom-btn.bottom-btn-g { background: #75B544;}
	#bottom-area .bottom-btn.bottom-btn-b { background: #306FBF;}
	#bottom-area .btn-bg { position: absolute; width: 100%; height: 100%; border-radius: 5.33vw; background: #000; top: 2.66vw; left: 0; z-index: -1;}
	#bottom-area .bottom-btn:hover { cursor: pointer; transform: translateY(10px); opacity: 1;}
	#bottom-area .bottom-btn .btn-txt { font-weight: 900;font-size: 8.53vw; text-align: center; margin-bottom: 5.86vw; line-height: 1.375em; letter-spacing: -0.04em;}
	#bottom-area .bottom-btn .btn-b { }
	#bottom-area .bottom-btn .btn-b {  line-height: 3.15em; font-size: 4.26vw; border-radius: 6.6vw; text-align: center; background: url("../img/bottom_btn-arrow.svg")no-repeat right 6.6vw top 51%/2.4vw; display: inline-block; width: 72.8vw; background-color: #fff; color: #000; font-weight: bold;}
	#bottom-area .bottom-btn:hover .btn-b { background-color: #000; background-image: url("../img/btn-b-arrow.svg"); color: #fff;}
	
	.float_nav {  width: 100vw; height: 21.33vw; position: fixed; bottom: 0; left: 0; z-index: 999;}
	.float_nav::before { position: absolute; content: ''; width: 100%; height: 100%; background: #fff; top: 0; left: 0;z-index: -1;}
	.link-btn { width: 32.8vw; text-align: center; font-size: 3.73vw; line-height: 1.2em; color: #fff; height: 100%; font-weight: bold;}
	.link-btn:active { text-decoration: none; color: #fff;}
	.link-btn:hover { text-decoration: none; color: #fff;}
	.link-btn.siryou { background: url("../img/icon_book.svg")no-repeat left 12.8vw top 4.8vw/7.46vw; background-color: #306FBF; padding-top: 12.8vw;}
	.link-btn.oc { background: url("../img/icon_oc.svg")no-repeat left 12vw top 1.86vw/8.59vw; background-color: #75B544; padding-top: 10.66vw;}
	.link-btn.os { background: url("../img/icon_arrow.svg")no-repeat left 14.66vw top 14.4vw/3.2vw; background-color: #707070; padding-top: 4.53vw; line-height: 1.14em;}
	
	footer { margin-bottom: 21.33vw!important; font-family: 'Noto Sans JP', sans-serif!important;}
	footer .footer_inner { width: 100%; margin: 0 auto; width: 88vw; font-size: 3.73vw;}
	footer .footer_inner .footer_logo { width: 100%; align-self: center;}
	footer .footer_inner .footer_info { width: 100%; align-self: center; text-align: center; line-height: 1.71em; margin: 3.73vw auto 8.8vw;}
	footer .footer_inner .sns-list { width: 72.8vw; margin: 0 auto 5.34vw; align-self: center;}
	footer .footer_inner .sns-list li { width: 10.93vw; margin-left: 4.53vw;}
	footer .footer_inner .sns-list li:first-child { margin-left: 0;}
	footer .footer_bg { background-image: url("../img/footer_bg.png"); background-size: auto 100%; background-repeat: repeat-x; height: 13.33vw; }
	footer .copy { background: #000; text-align: center; font-size: 3.73vw; padding: 6.4vw 0 5.6vw; color: #fff; margin-top: -5px;}
	
	.page-top { position: fixed; bottom: 22.66vw; right: 0; width: 10.66vw; height: 10.66vw;}
	
	.youtube { position: relative; width: 100%; margin:0; margin-bottom: 10vw;}
	.youtubebtn { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 8vw; height: 5.6vw;}
	.movie_txt { text-align: center; margin-bottom: 8vw; font-size: 5vw; text-align: center; font-weight: 700;}
	
}
