@charset "UTF-8";

/* new clearfix */
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */

a:link { text-decoration: none; color: #000000; }
a:visited { text-decoration: none; color: #000000; }
a:hover { text-decoration: underline; color: #000000; outline: 0; }
a:active { text-decoration: none; color: #000000; outline: 0; }
a:focus { text-decoration: none; color: #000000; outline: 0; }

h1,h2,h3,h4,h5 { font-weight: normal; }

body,html {
    overflow-x: hidden;
}

body {
	font-family: 'RakutenSansJP2_W-Light','Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
	font-weight: normal;
	text-align: center; 
}

/* Brやセクションごと消すもの、出すもの、はこれをつかう */
@media screen and (max-width: 500px) {
    .pc_only { display: none;}
    .sp_only { display: block;}
	}
@media screen and (min-width: 501px) {
    .pc_only { display: block;}
    .sp_only { display: none;}
	}

/* ContentsWrapper */
@media screen and (max-width: 500px) {
#contents { width: 100%; overflow: hidden; }
	}

/* PCLogo */
#logo { width: 315px; margin: 60px 0; }

/*Contents Divider Arrow*/
@media screen and (max-width: 500px) {
.Arrow { margin: 30px auto; width: 375px; }
.Arrow img { height: 30px; }
	}
@media screen and (min-width: 501px) {
.Arrow { margin: 40px auto; width: 1234px; }
.Arrow img { height: 40px; }
	}

/* KvArea */
#KV_Wrapper { width: 100%; height: 600px; background-image: url("../../images/background_pc.jpg"); background-size: auto 100%; background-position: center top; background-repeat: no-repeat; background-color: #f6f6f6; border-bottom: 3px solid #e5acac; margin-bottom: 20px; }
#KV_Wrapper #KV_inner { width:1234px; margin: 0 auto; text-align: left; }
#KV_Wrapper #KV_inner_padding { padding: 0 30px; }
#KV_Wrapper h1 {font-size: 52px; line-height: 140%; margin-bottom: 20px; padding: 0px; font-family: 'RakutenSansJP2_W-DemiBold'; }
#KV_Wrapper p {font-size: 14px; line-height: 150%; margin-bottom: 10px; padding: 0px; }
#KV_Wrapper #Futurelist ul { margin: 0px; padding: 0px; font-family: 'RakutenSansJP2_W-Regular'; }
#KV_Wrapper #Futurelist li { display: inline-block; font-size: 16px; color: #ffffff; background-color: #bf0000; border-radius:100px; padding: 20px 30px; margin-right: 20px;  }
#KV_Wrapper #Pupularlist ul { margin: 0px 0px 20px 0; padding: 0px; }
#KV_Wrapper #Pupularlist li { display: inline-block; padding: 10px 0 20px 0; margin-right: 20px;  }
#KV_Wrapper #Pupularlist li img { height: 46px; }

/* SP Header */
#SpHeader { height: 77px; background-color: #ffffff; width: 100%; text-align: left; }
#SpHeader #logo_sp { width: 228px; margin: 25px 0 22px 20px; }

/* KvArea SP */
#KV_Wrapper_sp { width: 100%; background-image: url("../../images/background_sp.jpg"); background-size: auto 100%; background-position: right top; background-repeat: no-repeat; background-color: #f6f6f6; text-align: left; }
#KV_Wrapper_sp #KV_inner_sp { width:1234px; margin: 0 auto; text-align: left; }
#KV_Wrapper_sp #KV_inner_padding_sp { padding: 180px 0 60px 0; }
#KV_Wrapper_sp h1 {font-size: 32px; line-height: 180%; padding: 10px; background-color: #bf0000; color: #ffffff; box-decoration-break: clone; display: inline; font-family: 'RakutenSansJP2_W-DemiBold'; }

#SpKVtext {font-size: 14px; line-height: 140%; margin: 20px; padding: 0px; text-align: left; }
#SpKV3elem ul { margin: 0 0 10px 0; padding: 0px 20px; font-family: 'RakutenSansJP2_W-Regular'; text-align: left; }
#SpKV3elem li { display: inline-block; font-size: 14px; color: #bf0000; border-radius:100px; padding: 12px 16px; margin:0 10px 10px 0; border:3px solid #bf0000; }

/* Contents001 */
@media screen and (min-width: 501px) {
.Contents_inner001 { width:1176px; margin: 0 auto; }
.Contents_inner001_padding { padding: 40px 30px 0 30px; }
.Contents_inner001 h2 {font-size: 38px; line-height: 140%; margin-bottom: 20px; padding: 0px; }
.Contents_inner001 h3 {font-size: 24px; line-height: 140%; margin-bottom: 10px; padding: 0px; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner001 p {font-size: 14px; line-height: 150%; margin-bottom: 40px; padding: 0px; }
.Contents_inner001 ul { margin: 0px; padding: 0px; list-style-type: none; display:flex; justify-content: center; }
.Contents_inner001 li { padding: 30px 0; margin: 0 15px; width: 400px; border: 1px solid #dadada; }
.Contents_inner001 li p { padding: 0; margin: 0; }
.RegiButton a:link { text-decoration: none; color: #ffffff; }
.RegiButton a:visited { text-decoration: none; color: #ffffff; }
.RegiButton a:hover { text-decoration: none; color: #ffffff; outline: 0; }
.RegiButton a:active { text-decoration: none; color: #ffffff; outline: 0; }
.RegiButton a:focus { text-decoration: none; color: #ffffff; outline: 0; }
.RegiButtonTG { border-radius: 5px; display: block; width: 285px; padding: 25px; box-sizing: border-box; background: #219CD2; color: #FFF; text-decoration: none; text-align: center; margin: 10px auto;}
.RegiButtonLS { border-radius: 5px; display: block; width: 285px; padding: 25px; box-sizing: border-box; background: #bf0000; color: #FFF; text-decoration: none; text-align: center; margin: 10px auto;}
}

@media screen and (max-width: 500px) {
.Contents_inner001 { width:100%; margin: 0 auto; }
.Contents_inner001_padding { padding: 20px 20px 0 20px; }
.Contents_inner001 h2 {font-size: 30px; line-height: 130%; margin-bottom: 20px; padding: 0px; }
.Contents_inner001 h3 {font-size: 20px; line-height: 140%; margin-bottom: 10px; padding: 0px; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner001 p {font-size: 14px; line-height: 150%; margin-bottom: 20px; padding: 0px; text-align: left; }
.Contents_inner001 ul { margin: 0px; padding: 0px; list-style-type: none; }
.Contents_inner001 li { padding: 20px 0; margin: 0 0 15px 0; width: 100%; border: 1px solid #dadada; }
.Contents_inner001 li p { padding: 0 15px; margin: 0; text-align: center; }
.RegiButton a:link { text-decoration: none; color: #ffffff; }
.RegiButton a:visited { text-decoration: none; color: #ffffff; }
.RegiButton a:hover { text-decoration: none; color: #ffffff; outline: 0; }
.RegiButton a:active { text-decoration: none; color: #ffffff; outline: 0; }
.RegiButton a:focus { text-decoration: none; color: #ffffff; outline: 0; }
.RegiButtonTG { border-radius: 5px; display: block; width: 285px; padding: 25px; box-sizing: border-box; background: #219CD2; color: #FFF; text-decoration: none; text-align: center; margin: 10px auto 0 auto;}
.RegiButtonLS { border-radius: 5px; display: block; width: 285px; padding: 25px; box-sizing: border-box; background: #bf0000; color: #FFF; text-decoration: none; text-align: center; margin: 10px auto 0 auto;}
}

/* Contents002 */
@media screen and (min-width: 501px) {
.Contents_inner002 { width:100%; margin: 0 auto; background-color: #bf0000; }
.Contents_inner002_padding { padding: 0 30px; }
.Contents_inner002 h2 img { margin:50px 0 20px 0; padding: 0px; width: 200px; }
.Contents_inner002 img.meritvisual { width: 460px; margin-top: 20px; }
.Contents_inner002 p {font-size: 14px; line-height: 150%; margin-bottom: 20px; padding: 0px; text-align: left; }
.Contents_inner002 .text_whitetitle { color: #ffffff; font-size: 24px; text-align: center; }
.Contents_inner002 ul { margin: 0; padding: 0 0 50px 0; list-style-type: none; display:flex; justify-content: safe center; flex-wrap: wrap; }
.Contents_inner002 li { padding: 0 0 20px 0; margin: 10px; width: 500px; border-radius: 20px; background-color: #ffffff; }
.Contents_inner002 li h3 { background-color: #f2f2f2; border-radius: 20px 20px 0 0; padding: 15px; color: #000000; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner002 li p { margin: 20px 0 0 0; padding: 0 20px; }
}

@media screen and (max-width: 500px) {
.Contents_inner002 { width:100%; margin: 0 auto; background-color: #bf0000; }
.Contents_inner002_padding { padding: 0 20px; }
.Contents_inner002 h2 img { margin:40px 0 20px 0; padding: 0px; width: 180px; }
.Contents_inner002 img.meritvisual { width: 100%; margin: 0; }
.Contents_inner002 p {font-size: 14px; line-height: 150%; margin-bottom: 20px; padding: 0px; text-align: left; }
.Contents_inner002 .text_whitetitle { color: #ffffff; font-size: 18px; text-align: center; }
.Contents_inner002 ul { margin: 0; padding: 0 0 20px 0; list-style-type: none; display:flex; justify-content: safe center; flex-wrap: wrap; }
.Contents_inner002 li { padding: 0 0 15px 0; margin: 10px 0; width: 100%; border-radius: 20px; background-color: #ffffff; }
.Contents_inner002 li h3 { background-color: #f2f2f2; border-radius: 20px 20px 0 0; padding: 15px 10px; color: #000000; font-size: 14px; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner002 li p { margin: 15px 0 0 0; padding: 0 20px; }
}

/* Contents003 */
@media screen and (min-width: 501px) {
.Contents_inner003 { width:1234px; margin: 0 auto; }
.Contents_inner003_padding { padding: 0; }
.Contents_inner003 h2 {font-size: 38px; line-height: 140%; margin-bottom: 20px; padding: 0px; }
.Contents_inner003 ul { margin: 0; padding: 0; list-style-type: none; display:flex; justify-content: safe center; flex-wrap: wrap; }
.Contents_inner003 li { padding: 30px 0 30px 0; margin: 10px; width: 500px; border-radius: 20px;border:solid 1px #dadada; }
.Contents_inner003 .PupularLogo { width:200px; }
.Contents_inner003 li h3 { padding: 30px 0 10px 0; color: #000000; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner003 li p { font-size: 14px; line-height: 150%; margin: 10px 0 0 0; padding: 0 20px; text-align: left; }
}

@media screen and (max-width: 500px) {
.Contents_inner003 { width:100%; margin: 0 auto; }
.Contents_inner003_padding { padding: 0 20px; }
.Contents_inner003 h2 {font-size: 30px; line-height: 130%; margin-bottom: 20px; padding: 0px; }
.Contents_inner003 ul { margin: 0; padding: 0; list-style-type: none; }
.Contents_inner003 li { padding: 30px 0 30px 0; margin: 20px auto 0 auto; width: 100%; border-radius: 20px;border:solid 1px #dadada; }
.Contents_inner003 .PupularLogo { width:180px; }
.Contents_inner003 li h3 { padding: 30px 0 10px 0; color: #000000; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner003 li p { font-size: 14px; line-height: 150%; margin: 10px 0 0 0; padding: 0 20px; text-align: left; }
}

/* Contents004 */
@media screen and (min-width: 501px) {
.Contents_inner004 { width:1096px; margin: 60px auto 0 auto; }
.Contents_inner004_padding { padding: 0 30px; }
.Contents_inner004 h2 {font-size: 38px; line-height: 140%; margin-bottom: 40px; padding: 0px; }
.Contents_inner004 .LogoWrapperTG { border: 3px solid #219CD2; border-radius: 20px; }
.Contents_inner004 .LogoWrapperLS { border: 3px solid #BF0000; border-radius: 20px; margin-top: 40px; }
.Contents_inner004 .LogoWrapperTG h3 { border-radius: 15px 15px 0 0; font-size: 18px; line-height: 140%; margin:0; padding: 10px 0; background-color: #219CD2; color: #ffffff; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner004 .LogoWrapperLS h3 { border-radius: 15px 15px 0 0; font-size: 18px; line-height: 140%; margin:0; padding: 10px 0; background-color: #bf0000; color: #ffffff; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner004 ul { margin: 20px 0; padding: 0px; list-style-type: none; display:flex; justify-content: center; flex-wrap: wrap; }
.Contents_inner004 li { padding: 0; margin: 5px 10px; width: 230px; }
.Contents_inner004 li img { width: 230px; }
.Contents_inner004 .ButtonWrapper ul { margin: 0px; padding: 0px; list-style-type: none; }
.Contents_inner004 .ButtonWrapper li { padding: 20px 0; margin: 0 0 15px 0; width: 100%; border: 1px solid #dadada; }
.Contents_inner004 .ButtonWrapper li p { padding: 0 15px; margin: 0; text-align: center; }
}

@media screen and (max-width: 500px) {
.Contents_inner004 { width:100%; margin: 30px auto 0 auto; }
.Contents_inner004_padding { padding: 0 20px; }
.Contents_inner004 h2 { font-size: 28px; line-height: 130%; margin-bottom: 20px; padding: 0px; }
.Contents_inner004 .LogoWrapperTG { border: 3px solid #219CD2; border-radius: 20px; }
.Contents_inner004 .LogoWrapperLS { border: 3px solid #BF0000; border-radius: 20px; margin-top: 20px; }
.Contents_inner004 .LogoWrapperTG h3 { border-radius: 15px 15px 0 0; font-size: 18px; line-height: 140%; margin:0; padding: 10px 0; background-color: #219CD2; color: #ffffff; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner004 .LogoWrapperLS h3 { border-radius: 15px 15px 0 0; font-size: 18px; line-height: 140%; margin:0; padding: 10px 0; background-color: #bf0000; color: #ffffff; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner004 ul { margin: 10px 0; padding: 0px; list-style-type: none; display:flex; justify-content: center; flex-wrap: wrap; }
.Contents_inner004 li { padding: 0; margin: 0; width: 147px; }
.Contents_inner004 li img { width: 147px; }
}

/* Contents005 */
@media screen and (min-width: 501px) {
.Contents_inner005 { width:1234px; margin: 0 auto; }
.Contents_inner005_padding { padding: 0 30px; }
.Contents_inner005 h2 {font-size: 38px; line-height: 140%; margin: 0px; padding: 0px; }
.Contents_inner005 ul { margin: 20px 0 0 0; padding: 0px; list-style-type: none; display:flex; justify-content: safe center; flex-wrap: wrap; }
.Contents_inner005 li { padding: 0 0 20px 0; margin: 10px; width: 350px; border: 1px solid #dadada; border-radius: 20px; }
.Contents_inner005 li h3 { background-color: #BF0000; border-radius: 20px 20px 0 0; padding: 15px; color: #ffffff; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner005 li p { font-size: 14px; line-height: 150%; margin-bottom: 40px; margin: 20px 0 0 0; padding: 0 20px; text-align: left; }
.Contents_inner005 li img { width: 120px; margin-top: 30px; }
}

@media screen and (max-width: 500px) {
.Contents_inner005 { width:100%; margin: 0 auto; }
.Contents_inner005_padding { padding: 0 20px; }
.Contents_inner005 h2 {font-size: 28px; line-height: 140%; margin: 0px; padding: 0px; }
.Contents_inner005 ul { margin: 20px 0 0 0; padding: 0px; list-style-type: none; }
.Contents_inner005 li { padding: 0 0 20px 0; margin: 0 0 20px 0; width: 100%; border: 1px solid #dadada; border-radius: 20px; }
.Contents_inner005 li h3 { background-color: #BF0000; border-radius: 20px 20px 0 0; padding: 15px; color: #ffffff; font-family: 'RakutenSansJP2_W-Regular'; }
.Contents_inner005 li p { font-size: 14px; line-height: 150%; margin-bottom: 40px; margin: 20px 0 0 0; padding: 0 20px; text-align: left; }
.Contents_inner005 li img { width: 120px; margin-top: 30px; }
}
	
/* Contents006 */
@media screen and (min-width: 501px) {
.Contents_inner006 { width:1234px; margin: 60px auto 0 auto; }
.Contents_inner006_padding { padding: 0 30px; }
.Contents_inner006 h2 { font-size: 38px; line-height: 140%; margin-bottom: 20px; padding: 0px; }
.Contents_inner006 p { font-size: 14px; line-height: 150%; margin: 0; padding: 0px; }
.Contents_inner006 img { width: 500px; margin: 40px 0 0 0; }
}

@media screen and (max-width: 500px) {
.Contents_inner006 { width:100%; margin: 30px auto 0 auto; }
.Contents_inner006_padding { padding: 0 20px; }
.Contents_inner006 h2 { font-size: 30px; line-height: 130%; margin-bottom: 20px; padding: 0px; }
.Contents_inner006 p { font-size: 14px; line-height: 150%; margin-bottom: 10px; padding: 0px; text-align: left; }
.Contents_inner006 img { width: 335px; margin: 20px 0 0 0; }
}

/* Contents007 */
@media screen and (min-width: 501px) {
.Contents_inner007 { width:1234px; margin: 0 auto; }
.Contents_inner007_padding { padding: 0 30px; }
.Contents_inner007 h2 {font-size: 38px; line-height: 140%; margin:0; padding: 0px; }
}

@media screen and (max-width: 500px) {
.Contents_inner007 { width:100%; margin: 0 auto; }
.Contents_inner007_padding { padding: 0 20px; }
.Contents_inner007 h2 { font-size: 30px; line-height: 130%; margin:0 0 10px 0; padding: 0px; }
}


/* CTA */
@media screen and (max-width: 500px) {
	#PT_box {
		padding:0;
		margin:0;
		position:fixed;
		bottom:10px;
		right:10px;
		list-style-type:none;
		overflow:hidden;
		z-index:199;
	}
	#PT_box img {
		width: 100px;
	}
}
@media screen and (min-width: 501px) {
#PT_box{
	padding:0;
	margin:0;
	position:fixed;
	bottom:30px;
	right:30px;
	list-style-type:none;
	overflow:hidden;
	z-index:199;
	}
	#PT_box img {
		width: 138px;
	}
}

.target {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}

#Footerwrapper { width:100%;
	background-color:#bf0000;
	font-size: 12px;
	margin-top: 40px;
	line-height: 150%;
	text-align:center;
	color:#fff;
}
#Footerinner { padding:40px 20px; }

.progressbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 0;
  height: 5px;
  background-color: #bf0000;
  animation: progressbar linear both;
  animation-timeline: scroll();
  animation-range: entry 0% cover 100%;
}

@keyframes progressbar {
  from {
    width: 0;
  }

  to {
    width: 100%;
  }
}


/* フェードインさせる要素 */
.block {
    opacity: 0; /* 最初は非表示にしておく */
    transition: all 2s; /* 動きを滑らかに */
}
/* フェードイン用のクラス */
.fadeIn {
    opacity: 1;
}