@charset "utf-8";


#contents {font-size: 1.5rem;}
.D_none,.D_none *{display: none !important;}


.blue01 {color: #113377}
.blue02 {color: #0054ff}
.red {color: #ff0000}
.underline {text-decoration: underline;}



.anchor-nav {text-align:center;max-width: 1018px; margin: 37px auto 0;display: flex; -webkit-align-items: stretch; align-items: stretch; -webkit-justify-content: center; justify-content: center;}
.anchor-nav li { margin-left: 4%; width: 29.333%;}
.anchor-nav li:first-child{margin-left: 0;}
.anchor-nav li a {display: flex;-webkit-align-items: center; align-items: center; width: 100%; height: 100%; position: relative;background: -webkit-linear-gradient(top, #3a5280 0%,#0f2b62 100%);background: linear-gradient(to bottom, #3a5280 0%,#0f2b62 100%); -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 3px 0 0 #ced2db; box-shadow: 0 3px 0 0 #ced2db; color: #FFF; font-weight: bold; font-size: 2rem;text-align: center;text-decoration: none; -webkit-justify-content: center; justify-content: center; line-height: 1.3; padding: 8px;}
.anchor-nav li a:before {
	content: "";
	width: 21px;
	height: 38px;
	background: url(../images/img_arr_01.png) no-repeat 0 0/100% auto;
	position: absolute;
	top: 50%;
	left: 20px;
	margin-top: -19px;
	display: block;
}
.anchor-nav li a:hover {
	background: -webkit-linear-gradient(top, #0f2b62 0%,#3a5280 100%);background: linear-gradient(to bottom, #0f2b62 0%,#3a5280 100%);
}


.section {margin-top: 34px;}
.section ~ .section {margin-top: 80px;}
.section {overflow: hidden;}
.section .title{border-top: #2D4777 1px solid;border-bottom: #2D4777 1px solid;}
.section .title span{
	display:block;
	background: #EDEDED;
	border: #fff 2px solid;
	width: calc(100% + 2px);
	margin: 1px -1px;
	padding: 10px 0 10px 35px;
	position: relative;
	font-weight: bold;
	font-size: 3.2rem;
	color: #142F5C;
	line-height: 1.3;
}
.section .title span:before {
	content: "";
	display: block;
	width: 7px;
	height: 80%;
	background: #2D4777;
	position: absolute;
	top: -3px;
	left: 12px;
}
.section .txt-box{max-width: 1024px;margin: 60px auto 0;}
.section .movie-box {max-width: 1024px; margin:0 auto;}
.section .movie-box .youtubeRes{margin: 0 auto 60px;padding-top: 315px;}
.section .movie-box .youtubeRes iframe{
	max-width:560px;
	max-height:315px;
	left:0;
}



.book-data {margin-top: 30px;}
.book-name {font-weight: bold; font-size: 2.8rem;}
.book-detail {
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
    margin-top: 40px;
}
.book-detail .txt,
.book-detail .thumb {width: 50%;}
.book-detail .thumb {padding-right: 10px;}
.book-detail .txt {padding-left: 3%; -webkit-order: 1;order: 1;}
.book-detail .txt dt{font-weight:bold;text-indent:-0.2em;}
.book-detail .txt dl:not(last-child){margin-bottom:10px;}



.powerup .info-txt {
  border: 1px solid #2d4777;
  background: url(../images/img_powerup_01.png) repeat 100%;
  padding: 8px 10px 30px 8px;
  margin:50px auto 30px;
}
.powerup .info-txt dt {
  font-size: 2.4rem;
  line-height: 1.2;
  background: url(../images/img_powerup_02.png) no-repeat 0 0;
  padding: 37px 0 0 62px;
}
.powerup .info-txt dt span {
  font-weight: bold;
  background: linear-gradient(transparent 50%, #fff71f 50%);
  display: inline-block;
}
.powerup .info-txt dd {
  line-height: 1.8;
  padding: 10px 0 0 62px;
}
.powerup .info-txt .red {color: #e5004f}


.button {margin-top: 30px; padding: 0!important;}
.button a {-webkit-border-radius: 3px; border-radius: 3px; color: #FFF; font-weight: bold; font-size: 2rem;text-align: center;text-decoration: none; display: block; line-height: 1.3; padding: 15px;}
.button:after {display: none;}
.button a:before {
	content: "";
	width: 15px;
	height: 30px;
	background: url(../images/img_arr_01.png) no-repeat 0 0/100% auto;
	position: absolute;
	top: 50%;
	left: 30px;
	margin-top: -14px;
	display: block;
}
.button.RED a {background: -webkit-linear-gradient(top, #e85c69 0%,#c4363c 100%);background: linear-gradient(to bottom, #e85c69 0%,#c4363c 100%); border: #D12828 1px solid;}
.button.RED a:hover {background: -webkit-linear-gradient(top, #c4363c 0%,#e85c69 100%);background: linear-gradient(to bottom, #c4363c 0%,#e85c69 100%);}
.button.GRY span {background: #7c7c7c;}
.button span {-webkit-border-radius: 3px; border-radius: 3px; color: #FFF; font-weight: bold; font-size: 2rem;text-align: center;text-decoration: none; display: block; line-height: 1.3; padding: 15px;}

.button.toYoutube a{padding-left:40px;}
.button.toYoutube a:before {left:15px;}

.buttonL {margin-top: 30px; padding: 0!important;}
.buttonL a {-webkit-border-radius: 3px; border-radius: 3px; color: #FFF; font-weight: bold; font-size: 2rem;text-align: center;text-decoration: none; display: block; line-height: 1.3; padding: 15px 30px 15px 30px;}
.buttonL:after {display: none;}
.buttonL a:before {
	content: "";
	width: 15px;
	height: 30px;
	background: url(../images/img_arr_01.png) no-repeat 0 0/100% auto;
	position: absolute;
	top: 50%;
	left: 30px;
	margin-top: -14px;
	display: block;
}
.buttonL.RED a {background: -webkit-linear-gradient(top, #e85c69 0%,#c4363c 100%);background: linear-gradient(to bottom, #e85c69 0%,#c4363c 100%); border: #D12828 1px solid;}
.buttonL.RED a:hover {background: -webkit-linear-gradient(top, #c4363c 0%,#e85c69 100%);background: linear-gradient(to bottom, #c4363c 0%,#e85c69 100%);}
.buttonL.GRY span {background: #7c7c7c;}
.buttonL span {-webkit-border-radius: 3px; border-radius: 3px; color: #FFF; font-weight: bold; font-size: 2rem;text-align: center;text-decoration: none; display: block; line-height: 1.3; padding: 15px;}



#cnt01 .book_wrap:not(:last-child) {
  background: url(../images/img_powerup_03.png) repeat-x left bottom;
  overflow: hidden;
  padding-bottom: 40px;
}
#cnt03 .subttl {font-weight: bold; font-size: 2rem; line-height: 1.3; margin-bottom:15px;}
#cnt03 .thumb {float: right; margin-left: 30px; margin-bottom: 1em; border: #E2E2E2 1px solid; padding:3px}
#cnt03 .txt-box {line-height: 1.8;}





.winSP .main {margin: 0 -3.125%;}
.winSP .section {margin-top: 30px;}
.winSP .section ~ .section {margin-top: 50px;}
.section .title span{font-size: 2.2rem;}
.winSP .section .txt-box{margin: 20px auto 0;}


.winSP .anchor-nav  {display: block; margin-top: 15px;}
.winSP .anchor-nav li {width: 100%; margin-left: 0;}
.winSP .anchor-nav li a {font-size: 1.4rem; padding: 12px 0 12px 30px;-webkit-justify-content: flex-start; justify-content: flex-start;}
.winSP .anchor-nav li:nth-child(n+2) {margin-top: 8px;}
.winSP .anchor-nav li a:before {width: 10px; height: 20px; margin-top: -10px; left: 10px;}


.winSP .book-name {font-size: 1.8rem; line-height: 1.3;}
.winSP .book-detail {margin-top: 15px;}
.winSP .book-detail .txt,
.winSP .book-detail .thumb {width: 100%;}
.winSP .book-detail .thumb {padding-right: 0;}
.winSP .book-detail .txt {padding-left: 0; -webkit-order: 1; -ms-order: 1; order: 1;margin-top: 15px;}


.winSP .powerup .info-txt {padding-bottom: 10px;}
.winSP .powerup .info-txt dt {
  font-size: 1.6rem;
  background-size: 62px 29px;
  padding: 18px 0 0 20px;
}
.winSP .powerup .info-txt dt span {
  background: linear-gradient(transparent 70%, #fff71f 30%);
  display: inline;
  line-height: 1.8;
}
.winSP .powerup .info-txt dd {padding: 10px 0 0 20px;}


.winSP .button {margin-top: 15px;}
.winSP .button a:before {left: 15px;}


.winSP #cnt03 .subttl {font-size: 1.8rem;}
.winSP #cnt03 .thumb {float: none; display: block; width: 290px; margin: 0 auto 20px;}
.winSP #cnt03 .txt-box li{font-size: 1.2rem;line-height: 1.2;margin-bottom:5px}

.winSP .section .movie-box .youtubeRes{padding-top: 56.25%;}
.winSP .section .movie-box .youtubeRes iframe{
	width: 100% !important;
	height: 100% !important;
}

.anchor-nav li a {
	font-size: 1.8rem;
	padding-left: 23px;
}
