@charset "utf-8";

/* ----------------------------------
      Clear CSS
---------------------------------- */
h1, h2, h3, h4, h5, h6, div, p {
    font-family:"メイリオ", Meiryo, sans-serif;
}
main {
	color:#FFF;
	background-color: #000;
    font-family: "メイリオ", Meiryo, sans-serif;
}
main p {
	color:#000;
	line-height:1.3em;
}
/* ----------------------------------
      dsm-a001
---------------------------------- */
section {
	margin:0;
}
.section-inner{
	max-width:1920px;
	margin:0 auto;
	overflow:hidden;
}
h1 {
	font-size:70px;
	font-weight:500;
}
h2 {
	font-size:50px;
	color:#0078ff;
	margin:60px auto 20px;
}
h3{
	font-size:45px;
	background:#d0d0d0;
	line-height:70px;
	padding:10px 0 0 25px;
	margin:20px auto;
	text-align:left;
}
h4{
	color:#0078ff;
	font-size:34px;
	line-height:1.5em;
}
h5 {
	font-size:23px;
	line-height:1.5em;
}
main p {
	line-height:1.5em;
	font-size:23px;
}

@media screen and (max-width:1080px){
	h2 {
		font-size: 6.5vmin;
		margin:60px auto 20px;
	}
	h3{
		font-size: 5vmin;
		line-height:60px;
		padding:10px 0 0 25px;
		margin:20px auto;
	}
	h4{
		font-size: 4.4vmin;
		line-height:1.5em;
	}
	h5{
		font-size: 3.9vmin;
		line-height:1.5em;
	}
	main p {
		line-height:1.5em;
		font-size: 3vmin;
	}
}

@media screen and (max-width:480px){
	h1 {
		font-size:9vmin;
	}
	h2 {
		font-size: 7vmin;
		margin:30px auto 20px;
	}
	h3{
		font-size:6vmin;
		padding:7px 0 5px 5px;
		line-height:1.5em;
	}
	h4{
		font-size:5vmin;
	}
	h5{
		font-size:4vmin;
	}
	main p {
		font-size: 4vmin;
	}
	.order0{
		order:0;
	}
	.order1{
		order:1;
	}
	.order2{
		order:2;
	}
	.order3{
		order:3;
	}
	.order4{
		order:4;
	}
	.order5{
		order:5;
	}
}
/* ----------------------------------
      SECTION
---------------------------------- */
section {
	max-width:1920px;
	margin:0 auto;
}
.section-inner{
	max-width:1080px;
	text-align:left;
	margin:0 auto;
}
@media screen and (max-width:1080px){
	.section-inner{
		width:98%;
		margin:0 1%;
	}
}
/*-------------------------------------
	   Section Top Movie-01
-------------------------------------*/
section#topImageMovie{
	margin:0 auto;
	padding:0;
} 
.movieBox video {
    width: 100%;
    margin: 0 auto;
	display:block;
}
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
	padding-top:0;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}
/*-------------------------------------
	   Section-02
-------------------------------------*/
.sec-02 {
	position:relative;
	padding:0px 0;
	margin:0 auto;
	position: sticky;
	top: 0;
	z-index:10;
	background:rgba(186,218,255,0.9);
}
.sec-02 .sec02-link-box{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	max-width:1200px;
	margin:0 auto;
	padding:20px 0;
}
.sec-02 .flex-25{
	width:24%;
	box-sizing:border-box;
	background:#0078ff;
	padding:13px 0;
	color:#fff;
	font-size:28px;
	cursor:pointer;
}
.sec-02 .flex-25 a:link,
.sec-02 .flex-25 a:visited{
	color:#fff;
	text-decoration: none;
}
.sec-02 .sec02-link-box .tab.is-active{
  background:#000;
  color:#FFF;
  transition: all 0.5s ease-out;
}
@media screen and (max-width:1080px){
	.sec-02 .sec02-link-box {
		width: 98%;
	}
	.sec-02 .flex-25 {
		font-size:2.5vw;
	}
}
@media screen and (max-width:480px){
	.sec-02 .sec02-link-box{
		padding:10px 0;
		justify-content: space-evenly;
	}
	.sec-02 .flex-25 {
		width:auto;
		font-size:16px;
		padding: 10px 7px;
	}
}
/*-------------------------------------
	   Section-03
-------------------------------------*/
.sec-03 {
	position:relative;
	opacity:1;
}
.sec-03 .sectionInner{
	background:#000;
}
.panel{
  display:none;
}
.panel.is-show{
  display:block;
	padding-top:100px;
	margin-top:-100px;
}
.sec03-01{
	position:relative;
}
.sec03-01 h2{
	text-align:center;
}
.sec03-01 img{
	max-width:686px;
	margin:30px auto 80px;
}

.sec03-02{
	padding:0px 0 100px;
}
.sec03-02 img{
	max-width:973px;
	margin:30px auto 30px;
}
.sec03-txt-red {
	color:#ff0000;
	border:1px #ff0000 solid;
	padding:10px;
	line-height:1.5em;
	font-size:23px;
	margin:30px auto;
}

@media screen and (max-width:480px){
	.sec03-02 {
		padding: 0px 0 20px;
	}
	.sec03-01 img {
		margin: 30px auto 30px;
	}
	.sec03-txt-red {
		font-size: 4vmin;
	}
}

.sec03-03{
	padding:0;
}
.sec03-03 .sec03-flex{
	padding:10px 0 80px;
}
.sec03-03-txt {
	padding:10px 0;
}
.sec03-03 .sec03-flex02{
	margin:10px auto;
	align-items: stretch;
}
.sec03-03 .sec03-flex02 .flex-50{
	width:46%;
	background:#c6dffc;
	margin:10px auto;
	padding:10px 30px;
	box-sizing:border-box;
	border-radius:10px;
}
.sec03-03 .sec03-flex02 .flex-50 h5{
	font-size:30px;
	line-height:1.5em;
	border-bottom:2px #97c8ff solid;
	margin:5px 0 10px;
}
.sec03-03 .sec03-txt-red02{
	font-size:30px;
	color:#ff0000;
	text-decoration:underline;
	text-underline-offset: 8px;
	font-weight:bold;
}
@media screen and (max-width:1080px){
	.sec03-03 .sec03-txt-red02 {
		font-size: 5vmin;
	}
	.sec03-03 .sec03-flex02 .flex-50 h5 {
		font-size: 5vmin;
	}
}
@media screen and (max-width:480px){
	.sec03-03 .sec03-flex {
		padding: 10px 0 40px;
	}
	.sec03-03 .sec03-flex02 .flex-50{
		width:100%;
	}
}

.sec03-04 img {
	max-width:1080px;
	margin:20px auto 150px;
}
@media screen and (max-width:480px){
	.sec03-04{
		margin:40px auto 0px;
	}
	.sec03-04 img {
		margin:20px auto 50px;
	}
}
.sec03-05 {
		padding:0px 0 100px;
}
.sec03-05 h4 {
	margin:40px auto 0px;
}
.sec03-05 img {
	max-width:1080px;
	margin:5px auto 20px;
}
.sec03-txt-box{
	padding:20px 0 20px;
}
.sec03-txt-box p{
	font-size:20px;
}

@media screen and (max-width:480px){
	.sec03-04 img {
		margin:0px auto 50px;
	}
	.sec03-05 {
		padding: 0px 0 20px;
	}
	.sec03-txt-box p {
		font-size: 14px;
	}
}

.sec03-06 {
		padding:0px 0 100px;
}
.sec03-06-box{
	padding:20px 0 100px;
}
.sec03-06 h4{
	margin:40px 0 20px;
}
.sec03-06 img {
	margin:10px auto 0px;
}
.flex-70{
	width:68%;
	padding-right:2%;
}
.sec03-06 .flex-30 img{
	padding:40px 0 0;
}

@media screen and (max-width:480px){
	.sec03-06 {
		padding: 0px 0 20px;
	}
	.flex-70{
		width:100%;
	}
	.sec03-06 .flex-30 img {
		padding: 0px 0 0;
		width: 80%;
		margin: 0 auto;
	}
}

.sec03-07 {
	padding:0px 0 50px;
}
.sec03-07 .flexCon{
	margin:30px auto 80px;;
}
.sec03-07 h2{
	text-align:center;
	font-size:40px;
	line-height: 1.2em;
}

@media screen and (max-width:1080px){
	.sec03-07 h2 {
		font-size: 5vmin;
		line-height: 1.2em;
	}
}

@media screen and (max-width:480px){
	.sec03-07 .flexCon {
		margin: 30px auto 40px;
	}
	.sec03-07 {
		padding: 0px 0 20px;
	}
}

/*-------------------------------------
	   Section-04
-------------------------------------*/
.content-box{
	padding:10px 0 120px;
}
.content-box h2{
	padding:10px 0 50px;
	text-align:center;
}
.content-box h4{
	padding:10px 0 10px;
}
.content-box img{
	padding:10px 0 10px;
}
.sec04-box-02 img{
	padding:0 0 10px;
}
.content-box .youtube{
	margin:40px 0 0px;
}

.sec04-box-04 .flexCon{
	margin:40px auto;
	box-sizing:border-box;
}

@media screen and (max-width:480px){
	.content-box {
		padding: 10px 0;
	}
	.content-box h2 {
		padding: 10px 0 20px;
	}
	.sec04-box-04 .flexCon .flex-30 img{
		margin:10px auto;
		width:50%;
	}
}


/*-------------------------------------
	   Section-05
-------------------------------------*/
.sec-05 {

}

.sec-05 .sec03-txt-box{
	  padding: 0px 0 20px;
}

.sec-05 .sec05-img-01{
	max-width:803px;
	margin:0 auto;
}
.sec05-box {
	border:1px #ff0000 solid;
	padding:10px 30px;
	box-sizing:border-box;
	margin:60px auto;
}
.sec05-box h4{
	color:#ff0000;
}
.sec05-box .flexCon{
	margin:10px auto 0;
	justify-content:space-between;
}
.sec05-box .flex-50{
	width:48%;
}

.sec05-box-03 .sec03-txt-box p{
	padding-left:20px;
}
.sec05-box-03 .sec03-txt-box p:before{
	content:"※";
	margin-left:-20px;
}

@media screen and (max-width:480px){
	.sec05-box {
		padding: 5px 10px;
		margin: 30px auto;
	}
	.sec05-box .flex-50 {
		width: 100%;
	}
}
/*-------------------------------------
	   Section-06
-------------------------------------*/
.sec-06{
}
.sec-06 h4{
	color:#000;
	font-size:40px;
	padding:0;
	font-weight:normal;
}
.sec-06 .content-box .youtube{
	margin: 0px 0 80px;
}

@media screen and (max-width:480px){
	.sec-06 h4 {
		font-size: 18px;
	}
	.sec-06 .content-box .youtube {
		margin: 0px 0 30px;
	}
}
/*-------------------------------------
	   Section-07
-------------------------------------*/
.sec-07 {
	padding:50px 0;
}
.sec-07 .flexCon{
	padding:80px 0 0;
	justify-content:space-between;
}
.sec-07 .upper-flex{
	border:1px #aaa solid;
	align-items:center;
	padding:10px 50px;
	box-sizing:border-box;
}
.sec-07 .upper-flex h4{
	color:#000;
	font-size:35px;
	line-height:1.2em;
}
.sec-07 .upper-flex h5{
	color:#000;
	font-size:50px;
	padding:10px 0;
}
.sec-07 .upper-flex img{
	max-width:582px;
	margin:0 auto;
}
.sec-07 .contact-btn{
	width:100%;
	max-width:348px;
	text-align:center;
	background:#0078ff;
	margin-top:50px;
	box-shadow:5px 5px 7px #ccc;
}
.sec-07 .contact-btn a:link,
.sec-07 .contact-btn a:visited{
	color:#fff;
	font-size:26px;
	padding:10px 0;
	display:block;
	text-decoration:none;
}
.sec-07 .sec07-option{
	margin:70px auto 0;
	font-size:28px;
	text-align:center;
	font-weight:bold;
}
.sec-07 .sec07-option span{
	letter-spacing:-5px;
	padding:0 10px;
}
.sec-07 .bottom-flex {
	padding:30px 0 0;
}
.sec-07 .bottom-flex .flex-inner{
	padding:0px;
}
.sec-07 .bottom-flex .flex-50{
	border:1px #aaa solid;
	width:48%;
	box-sizing:border-box;
}
.sec-07 .bottom-flex .da-op1{
	background-image:url(../image/da-dvd01/sec-01-12.png);
	background-position:top 20px right;
	background-repeat:no-repeat;
}
.sec-07 .bottom-flex .da-op2{
	background-image:url(../image/da-dvd01/sec-01-13.png);
	background-position:top right;
	background-repeat:no-repeat;
}
.sec-07 .sec07-flex-txt{
	color:#0078ff;
	font-size:25px;
	line-height:1.2em;
	padding:30px 0 0 20px;
}
.sec-07 .bottom-flex h4{
	color:#000;
	font-size:28px;
	padding:30px 0 0 20px;
}
.sec-07 .bottom-flex h5{
	color:#000;
	font-size:45px;
	line-height: 1.2em;
	padding:0 0 0 20px;
}
.sec-07 .sec07-btn{
	margin:10px auto 0;
	margin:10px auto 20px;
}

@media screen and (max-width:768px){
	.sec-07 .upper-flex {
		align-items: center;
		padding: 10px 20px;
	}
	.sec-07 .upper-flex .flex-40,
	.sec-07 .upper-flex .flex-60{
		width:50%;
	}
	.sec-07 .upper-flex h4 {
		font-size:4vmin;
	}
	.sec-07 .upper-flex h5 {
		font-size:5vmin;
	}
	.sec-07 .bottom-flex .flex-50 {
		width:100%;
		margin:10px auto;
	}
}
@media screen and (max-width:768px){
	.sec-07 {
		padding: 20px 0;
	}
}
@media screen and (max-width:480px){
	.sec-07 .contact-btn a:link, 
	.sec-07 .contact-btn a:visited {
		font-size: 4vmin;
	}
	.sec-07 .sec07-option {
		margin: 40px auto 0;
		font-size: 18px;
	}
	.sec-07 .sec07-flex-txt {
		font-size: 5vmin;
		padding: 20px 0 0 10px;
	}
	.sec-07 .bottom-flex .da-op1 {
		background-size: 60%;
	}
	.sec-07 .bottom-flex .da-op2 {
		background-size: 60%;
	}
	.sec-07 .bottom-flex h4 {
		font-size: 5vmin;
	}
	.sec-07 .bottom-flex h5 {
		font-size: 6vmin;
	}
}
/*-------------------------------------
	   Section-08
-------------------------------------*/
.sec-08 {
	position:relative;
	opacity:1;
	z-index:1;
	padding:30px 0 60px;
}
.sec-08 h2 {
	font-weight:bold;
	text-align:center;
	font-size:40px;
}
.sec-08 .bdvr-txt{
	text-align:center;
	padding:0px 0 30px;
	font-size:23px;
}
.sec-08 .flexCon{
	justify-content:space-between;
}
.sec-08 .flex-50{
	width:48.5%;
}
.sec-08 .sec08-box{
	margin:0 auto;
}
.sec-08 .contact-btn{
	width:100%;
	max-width:360px;
	text-align:center;
	background:#0078ff;
	margin:50px auto;
	box-shadow:5px 5px 7px #ccc;
}
.sec-08 .contact-btn a{
	padding:12px 30px 8px;
	color:#fff;
	font-size:26px;
	padding:10px 0;
	display:block;
	text-decoration:none;
}
@media screen and (max-width:1200px){
	.sec-08 {
		width:98%;
	}
}
@media screen and (max-width:480px){
	.sec-08 {
		padding: 10px 0 40px;
	}
	.sec-08 .flex-50{
		width:100%;
		margin:10px auto;
	}
	.sec-08 h2 {
		font-size:7vmin;
	}
	.sec-08 .bdvr-txt{
		font-size:5vw;
		padding:10px 0 10px;
	}
	.sec-08 .sec13-box{
		margin:20px auto 40px;
	}
	.sec-08 .contact-btn a {
		font-size: 18px;
	}
}




/* ----------------------------------
        Footer clear
---------------------------------- */
#footer h1, h2, h3, h4, h5, h6, div, p {
    font-family: 'メイリオ','Meiryo',Arial,'YuGothic','Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Courier,sans-serif;
}
#footer div, 
#footer p {
    font-family: 'メイリオ','Meiryo',Arial,'YuGothic','Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Courier,sans-serif;
	font-weight:normal;
}
#footer dl#footerOutline h4 {
	font-size:14px;
}
#siteBottom #siteBottomInner.innerBox {
	font-weight:normal;
}



