@charset "UTF-8";
/* ------------------------------
		reset
------------------------------ */

a{
	color:#333333;
	text-decoration:none;
}
a:hover {
	text-decoration:none;
}
html,body{	height:100%;}
html{
	font-size:62.5%;
    overflow-y: scroll;
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-family: "メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	text-align: left;
	color:#221815;
}

textarea { font-size: 100%; }
img { vertical-align: bottom; }
.fl{float:left;}
.fr{float:right;}
.bold{font-weight:bold;}
.ac{text-align:center;}
.ar{text-align:right;}
input{outline:none;}

/* ------------------------------
    base
------------------------------ */

body{
	font-size:1.0rem;
}
p,table,dl,ol,li,h2,h3  {
	font-size: 1.8rem;
	line-height: 3rem;
}

/* ------------------------------
    header
------------------------------ */

/* #header{
	background: url(../images/header_bg01.jpg) top right no-repeat;
	background-size: contain;
} */

.ac{text-align:center;}
.red{color: #fd0000;}
.bold{font-weight: bold;}
.ul{text-decoration: underline;}
.f12{font-size: 1.2rem;}
.f14{font-size: 1.4rem;}

h3 span{
	display: block;
	font-size: 4.8rem;
	font-weight: bold;
	color: #fff;
	line-height: 3rem;
	width: 1053px;
	margin: 0 auto;
}

h4{
	font-size: 3.6rem;
	line-height: 4.8rem;
	color: #000;
	text-align: center;
	margin: 80px 0;
}


.wrap{
	width:1080px;
	margin:0 auto;
}

#header{
	/*background: url(../img/header_bg.jpg) no-repeat;
	background-size: cover;*/
	/*padding-bottom: 30px;*/
}

.header_bar{
	background-color: rgba(0,0,0,0.7);
	padding: 5px 0 10px;
}

h1{
	float: left;
}

h1 img{
	margin-top: 8px;
}

.header_bar_right{
	float: right;
}

.header_bar_right p{
	font-size: 1.4rem;
	color: #fff;
	text-align: center;
}

.header_bar_right p + p{
	margin-top: 5px;
}

.header_bar_right p + p br{
	display: none;
}

.head_img{
	padding: 4px 0 2px;
	background: #fff;
}
.head_img img{
	width: 100%;
}

.header_inner{
	margin-top: 1%;
	padding-bottom: 50px;
}

.header_inner .wrap{
	position: relative;
}

.header_inner p{
	text-align: center;
}

.header_inner .txt01{
	font-size: 4.3rem;
	color: #000;
	line-height: 6rem;
	margin-top: 35px;
	margin-bottom:35px;
}

.header_inner .txt01.small{
	font-size: 3rem;
	line-height:1.2;
}

.header_inner .txt01 .text{
	font-size: 1.6rem;
}

.header_inner .btn{
	margin-top: 5px;
}

.header_inner .txt02{
	font-size: 1.8rem;
	color: #000;
	margin-top: 15px;
}

.header_inner_left{
	float: left;
	width: 570px;
}

.header_inner_right{
	position: absolute;
	bottom: 0;
	right: 1.5%;
	width: 396px;
}
.header_inner_right2{
	position: absolute;
	bottom: -155px;
	right: 00px;
	width: 547px;
}

.voice-area{
	width: 88%;
	max-width: 1080px;
	margin: 20px auto 50px;
}
.voice-area h4{
	margin-bottom: 30px;
}
.voice-area ul{
	margin: 0;
	padding: 0;
}
.voice-area ul li{
	padding:  0 14px;
	border: 2px solid #5080be;
	margin-bottom: 20px;
	background: url(../images/voice_bg01.jpg) repeat;
    background-position: 0 6px;
	padding: 20px 20px;
	list-style: none;
	display: flex;
	align-items: flex-start;
}
.voice-area ul li img{
	width: 140px;
	height: auto;
	margin-right: 20px;
}
.voice-area ul li p{
	    font-size: 1.8rem;
    line-height: 3rem;
}
.voice-area ul li p:first-child{
	padding-left: 1em;
	text-indent: -1em;
}
.voice-area ul li .name{
	font-weight: bold;
	text-align: right;
}
.voice-area ul li .note{
	font-size: 8px;
	line-height: 1.5;
	text-align: right;
	margin-top: 5px;
}


#sec01{
	margin-top: 160px;
}

#sec01 .ttl{
	font-size: 4rem;
	font-weight: bold;
	text-align: center;
	line-height: 2rem;
	margin-bottom: 50px;
	color: #000;
}

.sec01_inner_right{
}

.sec01_inner_right  p + p{
    margin: 35px auto 50px;
}

.sec01_inner_left{
	width: 271px;
	float: left;
}

#sec02 h3{
	padding: 88px 0;
    position: relative;
}
.sec02_inner {
    margin: 10% auto 0;
}

.sec02_inner p{
    margin-top: 3%;
}
#sec02 .bg{
	background-image: url(../images/bg_01.jpg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: top left;
	position: relative;
	height:206px;
}
#sec03 .bg{
	background-image: url(../images/bg_02.jpg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: top right;
	position: relative;
	height:206px;
}
#sec04 .bg{
	background-image: url(../images/bg_03.jpg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: top left;
	position: relative;
	height:206px;
}
.bg::before{
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.9);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}
.box{
  position: absolute;
  width: 100%;
  text-align: center;
}
.box .mokuji{
  position: absolute;
  font-size: 2.4rem;
  font-weight: normal;
  width: 1053px;
  margin: 0 auto;
  left: -24px;
  right: 0;
  top: 40px;
}
#second{
    width: 1100px;
    font-size: 4.3rem;
}
#sec02 .wrap .book {
    position: absolute;
    right: 120px;
    top: -220px;
}

#sec02 .wrap{
	margin: 0 auto 90px;
    position: relative;
}

.clear {
	clear:both;
}
.check {
	margin:3% 5% 0 2%;
}
.check ul li{
	list-style-type: none;
	padding: 0 0 0 56px;
	position: relative;
	font-size: 2.5rem;
	line-height: 48px;
}

.check ul li:before{
	content:"\00a0";
	display: block;
	border: solid 16px #31af91;
	border-radius: 16px;
	-moz-border-radius: 16px;
	-webkit-border-radius: 16px;
	height: 0;
	width: 0;
	position: absolute;
	left: 7px;
	top: 30%;
	margin-top: -8px;
}

.check ul li:after{
	content:"\00a0";
	display:block;
	width: 6px;
	height: 14px; 
	border: solid #fff;
	border-width: 0 4px 4px 0;
	position:absolute;
	left: 17px;
	top: 30%;
	margin-top: -3px;  
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.checkL {
	float:left;
	width:456px;
}
.checkR {
	float:right;
	width:456px;
}
.sec00_inner {
	padding-top:5%;
}

.index_box1 .left{
float: left;
width: 50%;
}
.index_box1 .right{
float: right;
width: 50%;
}
.index_box2{
	float: right;
	width: 48%;
}
.index_box1 p,
.index_box2 p{
	font-size: 1.8rem;
}
.index_box1 ul li,
.index_box2 ul li{
	font-size: 1.6rem;
	list-style-type: none;
	position: relative;
	text-align:left;
	margin: 0 0 0.3em 2.0em;
}
.index_box1 ul li:after,
.index_box2 ul li:after{
	display: block;
	content: '';
	position: absolute;
    top: 0.5em;
    left: -1.2em;
	width: 10px;
	height: 10px;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 100%;
}
.index_box1 p.index_chapter,
.index_box2 p.index_chapter {
	border-left: solid 4px #ed1c24;
	padding: 0 0 0 8px;
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 3px;
	margin-top: 30px;
	line-height: 1.45;
}
.index_box1 p.index_chapter span.smaller,
.index_box2 p.index_chapter span.smaller {
	font-size: 1.8rem;
}
.index_box1 p.index_chapter span.red,
.index_box2 p.index_chapter span.red {
	color: #ed1c24;
}
.index_box1 p.index_chapter span.note{
    font-size: 8px;
    font-weight: normal;
}
.boder {
 border-bottom: dotted 1px #CCC;
    margin-bottom: 1.5rem;
}

#sec03 h3{
	/*background: url(../img/sec03_bg.jpg) no-repeat;
	background-size: cover;*/
	padding: 160px 0 120px;
}

#sec03 h3{
   padding: 88px 0;
}

.new_sec03{
	margin-bottom: 80px;
}

.sec03_inner01_left{
	width: 590px;
	float: left;
}
.sec03_inner01_left img:first-child {
    margin-top: 10px;

}
#sec03_inner01_nomal,
.sec03_inner01 .sec03_inner01_nomal{
    margin-top: 2%;
	width: 100%;
	float: none;
}
#sec03_inner01_nomal p,
.sec03_inner01 .sec03_inner01_nomal p{
	width: 100%;
}

.sec03_inner01 .sec03_inner01_nomal .title{
	font-size: 2.5rem;
}

.sec03_inner01{
	margin-top: 55px;
}

.sec03_inner01 .ttl + p{
	text-align: right;
	margin-bottom: 50px;
	padding: 0;
}

.sec03_inner01 p{
	width: 550px;
}

.sec03_inner01 p + p{
	margin-top: 35px;
}

.sec03_inner01 .ttl{
	font-size: 3.6rem;
	color: #cc0000;
	line-height: 4.8rem;
	font-weight: bold;
	margin-bottom: 60px;
	width: 610px;
}

.sec03_inner01_right{
	float: right;
	width: 490px;
}

.sec03_inner01_right p + p{
	margin-top: -46px;
}

.sec03_inner01_right p{
	font-size: 1.4rem;
	line-height: 2.4rem;
	width: 366px;
	color: #000;
}

.performance h4{
	margin-bottom: 30px;
}
.perbox{
	border: 2px solid #5080be;
	padding: 20px;
	max-width: 800px;
	margin: auto;
}
.perbox p{
	text-align: center;
}
.perbox p+p{
	margin-top: 30px;
}
.perbox .bold{
	display: block;
	font-weight: bold;
	text-align: left;
}
.book_img{
	text-align: center;
	margin-top: -20px;
}

.sec03_inner02 h4{
	margin: 60px 0 70px;
}

.sec03_inner02 p + p{
	margin: 35px auto;
}

.sec03_inner02 .title + p{
	line-height: 0;
}

.sec03_inner02 > div{
	margin: 0 auto 50px;
}

.sec03_inner02_left{
	float: left;
}

.sec03_inner02_right{
	width: 660px;
	float: right;
}
.sec03_inner02_right span {
    font-weight: bold;
}
.sec03_inner02_right .title {
    font-size: 2.4rem;
}
sec03_inner02 .photo {
    margin-top: 5%;
}

.btn_area {
	margin-top: 60px;
	text-align: center;
}

.btn_area .btn{
	margin-bottom: 20px;
}

.btn_area p{
	text-align: center;
}

#sec04{
	margin-top: 100px;
}

#sec04 .wrap{
	margin:30px auto 0 auto;
}

#sec04 h3{
	/*background: url(../img/sec04_bg.jpg) no-repeat;
	background-size: cover;*/
	padding: 88px 0 90px;
}

#sec04 h3 span{
	text-align: center;
	font-size: 4.8rem;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}

#sec04 h3 span br{
	display: none;
}

#sec04 .voice_box p{
	padding:0 0 20px 0;
	margin:0 0 20px 0;
	border-bottom:1px #cccccc dashed;
}

#sec04.voice_box p span{
	display:block;
	margin:0 0 5 0;
}
#sec04 .well{
	margin-top: 30px;
}
#sec04 .wrap {
    max-width: 705px;
    margin: 30px auto 0 auto;
}

#sec04 strong,#sec04 div{
	font-size: 1.4rem;
	    line-height: 1.42857143;
}

.cta {
	padding: 60px 0;
	background: #252525;
}
.cta .wrap{
	margin: 0 auto!important;
}
.cta h2,
.cta p {
	text-align: center;
	color: #fff;
}
.cta h2 {
    font-size: 42px;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
    margin-bottom: 1em;
	margin-bottom: .5em;
}
.cta .txt {
	color: #bebebe;
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 10px;
}
.cta .price {
	font-size: 36px;
	line-height: 1.2;
	font-weight: bold;
}
.cta .price .strike {
	color: #bebebe;
	font-size: 24px;
	line-height: 1.8;
	font-weight: normal;
	text-decoration: line-through;
}
.cta .price .small {
	font-size: .7em;
}
.cta .btn {
	margin: 30px auto;
	display: block;
	width: 90%;
}
.cta .btn img{
	max-width: 100%;
	width: auto;
}
.cta .center img{
	max-width: 100%;
	width: auto;
}

#table{
	padding-bottom: 60px;
	padding-top: 60px;
}
#table p{
	font-size: 1rem;
	margin-top: 10px;
}
#table table{
	border: 1px solid #000;
	width: 100%;
	border-collapse: collapse;
}
#table table th,
#table table td{
	font-size: 1.4rem;
	line-height: 1.8;
	padding: 8px 5px;
	border: 1px solid #000;
}
#table table th:first-child,
#table table td:first-child{
	width: 180px;
}
#table table th:nth-child(2),
#table table td:nth-child(2){
	width: 150px;
}
#table table th:nth-child(3),
#table table td:nth-child(3){
	width: 240px;
}
#table table th:nth-child(4),
#table table td:nth-child(4){
	width: 560px;
}
#table table th{
	background: #aaa;
	color: #fff;
	text-align: center;
}
#table table td .red{
	color: #ff0000;
}
#table table td .bold{
	font-weight: bold;
}
#table table td.ac{
	text-align: center;
}
#table p {
    font-size: 1rem;
    line-height: 1.5;
    margin-top: 10px;
}

.disclaimer{
	/* padding: 70px 0 0; */
}
.disclaimer p+p{
	margin-top: 20px;
}


#spt_footer {
	color: #FFF;
	background-color: #000;
	padding: 15px;
    margin-top: 100px;
}

#spt_footer .link {
	font-size: 1.2rem;
	line-height: 130%;
	text-align: center;
}

#spt_footer .link a {
	color: #FFF;
	text-decoration: none;
    padding: 10px;
}

#spt_footer .link a:hover {
	text-decoration: underline;
	color: #999;
}

#spt_footer .copy {
    color: #FFF;
    font-size: 1.2rem;
    line-height: 1.6;
    margin-top: 25px;
    width: 753px;
    text-align: left;
    margin: 30px auto 0;
    padding-left: 88px;
}

iframe[name="google_conversion_frame"]{
	display:none;
}

.sp,.sp_video,.tb{display: none}
.pc{display: inline-block;}
.pc_video{display: block;}


@media screen and (max-width: 1100px) {

.red{color: #fd0000;}
.bold{font-weight: bold;}
.ul{text-decoration: underline;}
.f12{font-size: 1.2rem;}
.f14{font-size: 1.4rem;}
img{width: 100%;}




h3 span{
	display: block;
	font-size: 4.5rem;
	font-weight: bold;
	color: #fff;
	line-height: 3rem;
	width: 86%;
	margin: 0 auto;
}
.box .mokuji {
    width: 86%; 
}
.box .mokuji{
  left: -24px;
  right: 0;
  top: -50px;
}
#sec02 .wrap .book {
    width: 22%;
    float: right;
    position: static;
    margin-top: -7%;
}
#second{
	width: 100%;
}
h4{
	font-size: 3.6rem;
	line-height: 4.8rem;
	color: #000;
	text-align: center;
	margin: 8% 0;
}

.wrap{
	width:96%;
	margin:0 auto;
}

#header{
	/*background: url(../img/header_bg.jpg) no-repeat;
	background-size: cover;*/
	margin-bottom: 10px;
	height: auto;
    background-size: cover;
}

.header_bar{
	background-color: rgba(0,0,0,0.7);
	padding: 2% 0 1%;
}

h1{
	float: left;
	max-width: 242px;
	width: 100%;
}

h1 img{
	margin-top: 2%;
}

.header_bar_right{
	float: right;
}

.header_bar_right p:first-child{
	width: 100%;
	max-width: 239px;
	margin: 0 auto;
}

.header_bar_right p{
	font-size: 1.4rem;
	color: #fff;
	text-align: center;
}

.header_bar_right p + p{
	margin-top: 0;
}

.header_inner{
	margin-top: 1%;
	padding-bottom: 7%;
}

.header_inner .wrap{
	position: relative;
}

.header_inner p{
	text-align: center;
}

.header_inner .txt01{
	font-size: 4.3rem;
	color: #000;
	line-height: 5rem;
	margin-top: 6%;
}

.header_inner .btn{
	margin-top: 6%;
}

.header_inner .txt02{
	font-size: 1.8rem;
	color: #000;
	margin-top: 2.5%;
}

.header_inner_left {
    float: left;
    width: 38%;
    margin-left: 10%;
}

.header_inner_right{
	position: absolute;
	bottom: -15%;
	right: 0;
	max-width: 360px;
	width: 33%;
}

.header_inner_right02{
	position: absolute;
	bottom: 0;
	max-width: 360px;
	width: 41%;
}

.header_txt{
	text-align: center;
	font-size: 1.8rem;
}

.voice-area{
	width: 88%;
	max-width: 1080px;
	margin: 60px auto 60px;
}


.checkR,.checkL{
	width: 50%;
}

.check ul li{
	font-size: 2rem;
}

#sec01{
	margin-top: 10%;
}

#sec01 .ttl{
	font-size: 4rem;
	font-weight: bold;
	text-align: center;
	line-height: 2rem;
	margin-bottom: 50px;
	color: #000;
}

.sec01_inner_right{
	width: 100%;
	float: none;
}

.sec01_inner_right  p + p{
	margin-top: 4%;
}


#sec02 .bg{
	height: auto;
	padding: 11% 0 10%;
}

#sec02 h3{
	/* padding: 6% 0; */
	padding: 0;
}


#sec02 .wrap{
	margin: 9% auto 8%;
    text-align: center;
}

/*.index_box1{
	float: left;
	width: 48%;
} */
.index_box2{
	float: right;
	width: 48%;
}
.index_box1 p,
.index_box2 p{
	font-size: 1.4rem;
}
.index_box1 ul li,
.index_box2 ul li{
	font-size: 1.4rem;
	list-style-type: none;
	position: relative;
	text-align:left;
	margin: 0 0 0.3em 1.5em;
}
.index_box1 ul li:after,
.index_box2 ul li:after,{
	display: block;
	content: '';
	position: absolute;
	top: .8em;
	left: -1em;
	width: 5px;
	height: 5px;
	background-color: #fff;
	border: 1px solid #ed1c24;
	border-radius: 100%;
}
.index_box1 p.index_chapter,
.index_box2 p.index_chapter {
	border-left: solid 4px #ed1c24;
	padding: 0 0 0 8px;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 3px;
	margin-top: 30px;
}
.index_box1 p.index_chapter span.smaller,
.index_box2 p.index_chapter span.smaller {
	font-size: 13px;
}
.index_box1 p.index_chapter span.red,
.index_box2 p.index_chapter span.red {
	color: #ed1c24;
}
.index_box1 p.index_chapter span.note{
    font-size: 7px;
}

#sec03 .bg{
	height: auto;
	padding: 7% 0 9%;
}

#sec03 h3{
	/*background: url(../img/sec03_bg.jpg) no-repeat;
	background-size: cover;*/
	/* padding: 6% 0; */
	padding: 0;
}

.sec03_inner01_left{
	max-width: 610px;
	width: 59%;
	float: left;
}


.sec03_inner01 .sec03_inner01_nomal .title{
	font-size: 1.8rem;
	margin-top: 30px;
}

.sec03_inner01{
	margin-top: 55px;
}

.sec03_inner01 .ttl + p{
	text-align: right;
	margin-bottom: 50px;
	padding: 0;
}

.sec03_inner01 p{
	width: 90%;
}

.sec03_inner01 p + p{
	margin-top: 4%;
}

.sec03_inner01 .ttl{
	font-size: 3.6rem;
	color: #cc0000;
	line-height: 4.8rem;
	font-weight: bold;
	margin-bottom: 60px;
	max-width: 610px;
	width: 100%;
}

.sec03_inner01 .ttl br{
	display:none;
}

.sec03_inner01_right{
	float: right;
	max-width: 366px;
	width: 34.8%;
}

.sec03_inner01_right p + p{
	margin-top: 2%;
}

.sec03_inner01_right p{
	font-size: 1.4rem;
	line-height: 2.4rem;
	width: 100%;
	color: #000;
}

.performance h4{
	margin-bottom: 8%;
}
.perbox{
	padding: 3%;
}
.perbox p{
	text-align: left;
}
.perbox p+p{
	margin-top: 4%;
}
.book_img{
	margin-top: -4%;
}

.sec03_inner02 h4{
	margin: 6% 0 7%;
}

.sec03_inner02 p + p{
	margin-top: 4%;
}

.sec03_inner02 > div{
	margin-top: 5%;
}

.sec03_inner02_left{
	max-width: 300px;
	width: 28.5%;
	float: left;
	margin-left: 3%;
}

.sec03_inner02_right{
	max-width: 660px;
	width: 62.8%;
	float: right;
}

.sec03_inner02_right p:last-child{
	font-size: 1.2rem;
	line-height: 2.4rem;
}

.btn_area {
	margin-top: 6%;
}

.btn_area .btn{
	width: 55%;
	max-width: 463px;
	margin: 0 auto 2%;
}

.btn_area p{
	text-align: center;
}

#sec04{
	margin-top: 10%;
	margin-bottom: 9%;
}

#sec04 .wrap{
	margin-top: 2%;
	text-align: left;
}

#sec04 .bg{
	height: auto;
    padding: 6% 0 10%;

}

#sec04 h3{
	/* padding: 6% 0; */
	padding: 0;
}

#sec04 h3 span{
	text-align: center;
	font-size: 3.6rem;
	line-height: 5rem;
	letter-spacing: 0.2rem;
}

#sec04 h3 span br{
	display: block;
}


#spt_footer {
	color: #FFF;
	background-color: #000;
	padding: 15px;
	overflow: hidden;
}

#spt_footer .link {
	font-size: 1.2rem;
	line-height: 130%;
	text-align: center;
}

#spt_footer .link a {
	color: #FFF;
	text-decoration: none;
}

#spt_footer .link a:hover {
	text-decoration: underline;
	color: #999;
}

#spt_footer .copy {
	text-align: center;
	color: #FFF;
	font-size: 1.2rem;
	line-height: 1.6;
	margin-top: 25px;
	padding-left: 0;
}

.pc,.sp{display: none;}
.pc_video{display: block;}
.tb{display: inline-block;}



}




@media screen and (max-width: 768px) {

p{font-size: 1.4rem;line-height: 2.2rem;}

.red{color: #fd0000;}
.bold{font-weight: bold;}
.ul{text-decoration: underline;}
.f12{font-size: 0.9rem;}
.f14{font-size: 1.2rem;}
.f18{font-size: 1.4rem;}
img{width: 100%;}

h3 span{
	display: block;
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	line-height: 2.4rem;
	width: 95%;
	margin: 0 auto;
}

h4{
	font-size: 2rem;
	line-height: 2.6rem;
	color: #000;
	text-align: center;
	margin: 8% 0;
}


.wrap{
	width:88%;
	margin:0 auto;
}


#header {
    background: url(../images/header_bg01.jpg) right -84px top no-repeat;
    background-size: cover;
    height: auto;
}

.header_bar{
	background-color: rgba(0,0,0,0.7);
	padding: 2% 0 1%;
}

h1{
	float: none;
	max-width: 242px;
	width: 100%;
	margin: 0 0 3% 0;
}

h1 img{
	width:91px!important;
	margin-top: 2%;
}

.header_bar_right{
	display:none;
	float: none;
	margin: 0 auto;
}

.header_bar_right p:first-child{
	width: 60%;
	max-width: 239px;
	margin: 0 auto;
}

.header_bar_right p{
	font-size: 1rem;
	color: #fff;
	text-align: center;
}

.header_bar_right p + p{
	margin-top: 0;
}

.header_bar_right p + p br{
	display: block;
}


.header_inner{
	margin-top: 1%;
	padding-bottom: 7%;
	margin-bottom: 40px;
}

.header_inner .wrap{
	position: relative;
}

.header_inner p{
	text-align: center;
}

.header_inner .txt01{
	font-size: 2rem;
	color: #000;
	line-height: 2.5rem;
	margin-top: 6%;
}

.header_inner .btn{
	margin-top: 6%;
}

.header_inner .txt02{
	font-size: 1rem;
	color: #000;
	margin-top: 2.5%;
}

.header_inner_left{
   float: left;
    width: 65%;
    margin-left: 0;
}

.header_inner_right{
    position: absolute;
    bottom: -22px!important;
    right: 0;
    max-width: 360px;
    width: 36%;
}

.header_inner_right2{
	position: absolute;
	bottom: -20%!important;
    right: 0;
	max-width: 360px;
	width: 80%!important;
}
.header_txt{
	text-align: center;
	font-size: 1.4rem;
}

.header_inner .txt01.small {
    font-size: 1.6rem!important;
}
.header_inner .txt01 .text{
	font-size: 1.4rem;
}
    

.voice-area{
	margin: 0% auto 10%;
	padding:  0 2%;
}
.voice-area ul li{
	display: block;
}
.voice-area ul li img{
	width: 30vw;
	margin: 0 auto 3%;
	display: block;
}
.voice-area ul li{
	padding: 3% 3%;
	list-style: none;
}
.voice-area ul li p{
	    font-size: 1.5rem;
    line-height: 2.8rem;
}
.voice-area ul li .note{
	text-align: left;
}

.checkL,
.checkR {
    float: none;
    width: 100%;
}
    
.check ul li {
    width: 90%;
    font-size: 1.6rem;
    padding-left: 43px;
}
.check ul li:before {
    border: solid 14px #31af91;
    border-radius: 14px;
    -moz-border-radius: 14px;
    -webkit-border-radius: 14px;
    left: 7px;
    top: 30%;
    margin-top: -7px;
}

.check ul li:after {
    width: 5px;
    height: 12px;
    border-width: 0 3px 3px 0;
    left: 17px;
    top: 30%;
    margin-top: -2px;
}

#sec00{
	margin-top: 5%;
}
h3 span{
	font-size: 1.7rem;
}
 #second{
	width: 100%;
	font-size: 1.7rem;
}   
#sec01{
	margin-top: 15%;
}

#sec01 .ttl{
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4rem;
	margin-bottom: 7%;
	color: #000;
}

.sec01_inner_right{
	max-width: 715px;
	width: 100%;
	float: none;
}

.sec01_inner_right  p + p{
	margin-top: 4%;
}

.sec01_inner_left{
	max-width: 271px;
	width:50%;
	float: none;
	margin: 0 auto 5%;
}

.sec01_inner_left .img{
	display:none;
}



#sec02 h3{
	padding: 24px 0;
}

#sec02 .wrap{
	margin: 9% auto 8%;
}

.index_box1{
	float: none;
	width: 100%;
}
.index_box2{
	float: none;
	width: 100%;
}
.index_box1 p,
.index_box2 p{
	font-size: 1.4remz;
}
.index_box1 ul,
.index_box2 ul{
	float: none!important;
	width: 100%!important;
}
.index_box1 ul li,
.index_box2 ul li{
	font-size: 14px;
	list-style-type: none;
	position: relative;
	text-align:left;
	margin: 0 0 0.3em 1.5em;
}
.index_box1 ul li:after,
.index_box2 ul li:after{
	display: block;
	content: '';
	position: absolute;
	top: .8em;
	left: -1em;
	width: 5px;
	height: 5px;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 100%;
}
.index_box1 p.index_chapter,
.index_box2 p.index_chapter {
	border-left: solid 4px #ed1c24;
	padding: 0 0 0 8px;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 3px;
	margin-top: 30px;
}
.index_box1 p.index_chapter span.smaller,
.index_box2 p.index_chapter span.smaller {
	font-size: 13px;
}
.index_box1 p.index_chapter span.red,
.index_box2 p.index_chapter span.red {
	color: #ed1c24;
}
.box .mokuji{
    position: static;
    font-size: 1.5rem;
    margin-left: 10px;
}
#sec02 .bg{
 height: 96px;    
 padding: 0;
}
#sec02 .wrap .book {
    position: static;
}
#sec03 .bg,
#sec04 .bg{
height: 70px;
}
    
#sec03 h3{
	padding: 24px 0;
}

#sec03.new_sec03{
	margin-bottom: 10%;
}
#sec03.new_sec03 h3{
	padding: 0!important;
}
#sec03.new_sec03 .bg{
	padding: 39px 0;
	height: 96px;
	background-size: auto 96px;
}

.sec03_inner01_left{
	max-width: none;
	width: 100%;
	float: none;
}


.sec03_inner01{
	margin-top: 5%;
}

.sec03_inner01 .ttl + p{
	text-align: right;
	margin: 0 auto 5%;
	padding: 0;
	width: 70%;
}

.sec03_img{
	width: 80%!important;
	margin:  auto!important;
	display: block!important;
}

.sec03_inner01 p{
	width: 100%;
}

.sec03_inner01 p + p{
	margin-top: 4%;
}

.sec03_inner01 .ttl{
	font-size: 1.8rem;
	color: #cc0000;
	line-height: 2.4rem;
	font-weight: bold;
	margin-bottom: 6%;
	max-width: 610px;
	width: 100%;
}

.sec03_inner01_right{
	float: none;
	max-width: none;
	width: 100%;
	margin-top: 8%;
}

.sec03_inner01_right p + p{
	margin-top: 2%;
}

.sec03_inner01_right p{
	font-size: 1rem;
	line-height: 2rem;
	width: 80%;
	color: #000;
	margin: 0 auto;
}

.sec03_inner02 h4{
	margin: 6% 0 7%;
}

.sec03_inner02 p + p{
	margin-top: 4%;
}

.sec03_inner02 > div{
	margin: 5% 0;
}

.sec03_img{
	width: 80%;
	margin: 5% auto 0!important;
}

.sec03_inner02_left{
	max-width: none;
	width: 60%;
	float: none;
	margin-left: 3%;
	margin: auto;
}

.sec03_inner02_right{
	max-width: none;
	width: 100%;
	float: none;
	margin-top: 8%;
}

.sec03_inner02_right p:last-child{
	font-size: 1.2rem;
	line-height: 2.4rem;
}

.sec03_inner02 .title + p{
	line-height: 1.6;
}

.btn_area {
	margin-top: 6%;
}

.btn_area .btn{
	width: 80%;
	max-width: 463px;
	margin: 0 auto 2%;
}

.btn_area p{
	text-align: center;
}

#sec04{
	margin-top: 10%;
	margin-bottom: 9%;
}

#sec04 .wrap{
	margin-top: 2%;
}

#sec04 h3{
	padding: 25px 0;
}

#sec04 h3 span{
	text-align: center;
	font-size: 1.7rem!important;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}

#sec04 h3 span br{
	display: block;
}

.cta {
	padding: 10% 0;
}
.cta h2{
    font-size: 2rem;
}
.cta .txt {
	font-size: 1.4rem;
}
.cta .price {
	font-size: 2.2rem;
}
.cta .price .strike {
	font-size: 1.8rem;
}
.cta img {
	width: 50%;
}
.cta .btn {
	margin: 3% auto;
}
.cta .center{
	width: 50%;
	margin: auto;
}
#table{
	padding-bottom: 30px;
	padding-top: 30px;
}
#table table th,
#table table td{
	font-size: 1.4rem;
	line-height: 1.8;
	padding: 8px 1%;
}
#table table th:first-child,
#table table td:first-child{
	width: 20%;
}
#table table th:nth-child(2),
#table table td:nth-child(2){
	width: 15%;
}
#table table th:nth-child(3),
#table table td:nth-child(3){
	width: 25%;
}
#table table th:nth-child(4),
#table table td:nth-child(4){
	width: 40%;
}


.disclaimer{
	padding-top: 7%;
}
.disclaimer p+p{
	margin-top: 4%;
}

#spt_footer {
	color: #FFF;
	background-color: #000;
	padding: 15px;
    margin-top: 10%;
}
#spt_footer span {
	display: block;
}
#spt_footer .link {
	font-size: 1.4rem;
	line-height: 130%;
	text-align: center;
}

#spt_footer .link a {
	color: #FFF;
	text-decoration: none;
}

#spt_footer .link a:hover {
	text-decoration: underline;
	color: #999;
}

#spt_footer .copy {
	text-align: center;
	color: #FFF;
	font-size: 1.2rem;
	line-height: 1.6;
	margin-top: 25px;
    width: auto;
    padding: 0;
}

.pc,.pc_video,.tb{display: none;}
.sp{display: inline-block;}
.sp_video{display: block;}

}




/* ------------------------------
    clearfix
------------------------------ */

.cf:after{
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */

/*
@media screen and (min-width: 769px) and (max-height: 800px) {
*/

h1 img{
	width:177px;
}


.header_inner{
	background: url(../images/header_bg01.jpg) top right no-repeat;
	background-size: contain;
	height: 740px;
	margin-top: 0;
	margin-bottom: 80px;
	padding-top: 50px;
}

.header_bar_right p {
    font-size: 1.2rem;
    color: #fff;
    text-align: center;
}

.header_bar_right p img{
	width:200px;
}

#header .header_inner_left h2{
	text-align:center;
}

#header .header_inner_left h2 img{
}

.header_inner .txt01 {
    font-size: 2.6rem;
    color: #000;
    line-height: 1.6;
    margin-top: 20px;
}

.header_inner .txt01.small{
    font-size: 2.6rem;
}

.header_inner .btn {
    margin-top: 20px;
}

.header_inner .txt02 {
    font-size: 1.6rem;
    color: #000;
    margin-top: 15px;
}

.header_inner_right {
    position: inherit;
    bottom: -75px;
    right: 0;
    width: 45%;
    margin: 0 auto;
}

.header02 .header_inner_right {
    position: absolute;
    bottom: -95px;
    right: 0px;
    width: 360px;
}

.header02 .header_inner_right img{
	width: 100%;
}

.header_inner_right02 {
    bottom: -35px;
}

.header_inner_right02 img {
	width:360px;
}

@media screen and (max-width: 1100px){

.header_inner{
    margin-bottom: 10px;
    height: auto;
    background-size: cover;
    background-position: right -4vw;
}
.header_inner .wrap{
    padding: 2% 0 8%;
}

.header_inner_right {
    position: inherit;
    bottom: -75px;
    right: 0;
    width: 45%;
    margin: 0 auto;
}

.header02 .header_inner_right {
    position: absolute;
    bottom: 8%;
    right: 0;
    width: 29%;
}

.header_inner_right2 {
    position: absolute;
    bottom: 0px;
    right: 0;
    width: 48%;
}


}

@media screen and (max-width: 768px){

	#header{
		background: transparent;
	}
	.header_inner{
		background-position: right -84px top -8vw;
    	padding: 14% 0 15%;
	}
	.header_inner .wrap{
	    padding: 0;
	}

}

/*

}

#sec09{
	background-color:#000000;
}

#sec09 + #header{
	padding:50px 0 0 0;
}
#sec09 + #header .header_inner{
	margin-top:0;
}
*/