@charset "utf-8"; 

/* ------------------------------
    reset
------------------------------ */

a{
	color:#313131; 
	text-decoration:none;
}
a:hover {
	text-decoration:underline;
} 
html{
	font-size:62.5%;
}

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 : "Noto Sans Japanese",sans-serif;
	text-align: left;
	color:#313131; 
}

textarea { font-size: 100%; }
img { vertical-align: bottom; }

/* ------------------------------
    base
------------------------------ */

body{
	position: relative;
	font-size: 1.0rem;
	min-width: 1200px;
}
p,table,dl,ol,ul li  {
	font-size: 1.8rem;
	line-height: 1.6;
	letter-spacing: -0.03rem;
}
p+p{
	margin-top: 35px;
}
.x2{
	margin-top: 70px;
}
.red{ color : #cc0000; }
.ul { text-decoration: underline; }

/* ------------------------------
    contents
------------------------------ */

header{
	background: url(../img/fv_bg.jpg) center center no-repeat;
	background-size: cover;
}
header .wrap{
	width: 1050px;
	margin: 0 auto;
}
header .obi{
	background: rgba(0,0,0,0.7);
}
header .obi img{
	float: left;
	margin: 4px 0 0 0;
}
header .tel{
	float: right;
	text-align: center;
	padding: 3px 0 5px;
}
header .tel .tel-link{
	display: inline-block;
	font-weight: bold;
	font-size: 2.4rem;
	text-align: center;
	line-height: 1.0;
	color: #fff;
	background: url(../img/icon_tel.png) 0 center no-repeat;
	margin: 0 0 6px;
	padding: 0 0 0 30px;
}
header .tel p{
	font-size: 1.4rem;
	line-height: 1.0;
	color: #fff;
}
header .fv{
	width: 1050px;
	margin: 0 auto;
	padding: 40px 0 70px 0;
}
header .fv > img{
	float: right;
	margin-right: 45px;
}
header .fv .block{
	float: left;
	width: 664px;
	padding: 35px 0 0 0;
}
header .fv .block h1{
	margin: 0 0 47px;
}
header .fv .block p{
	line-height: 1.0;
	text-align: center;
}
header .fv .block p.notes{
	line-height: 1.4;
}
header .fv .block p.notes.small{
	font-size: 1.5rem;
	line-height: 1.4;
}
header .fv .block p.notes.small.strong{
	font-size: 1.4rem;
}
header .fv .block p.notes.small.strong strong{
	font-size: 1.6rem;
}
header .fv .block p.notes.small.strong2{
	font-size: 1.3rem;
}
header .fv .block p.notes.small.strong2 strong{
	font-size: 1.7rem;
}
header .fv .block .pre{
	font-size: 3.2rem;
	font-weight: bold;
	margin: 0 0 20px;
}
header .fv .block .red{
	font-size: 2.1rem;
}
header .fv .block .red span{
	font-size: 4.2rem;
	font-weight: bold;
	color: #fd0000;
	margin-left: 20px;
	vertical-align: middle;
}
header .fv .block .red.long_txt{
	line-height: 1.4;
}
header .fv .block .red.long_txt span{
	font-size: 2.8rem;
	line-height: 1.2;
}
header .fv .block p{
	font-size: 1.8rem;
}
header .fv .block .notes + .notes{
	margin-top: 10px;
	line-height: 1.6;
	font-size: 1.6rem;
}
header .btn{
	margin: 30px auto 15px;
}
header p+p{
	margin-top: 0;
}
header .review_img{
	position: absolute;
	/* top: 80px;
	right: 260px; */
	top: 180px;
    right: -75px;
	margin-right: 0;
	float: none;
	max-width: 165px!important;
}
header .review_img{
	max-width: 140px!important;
}

header.header02{
	padding-bottom: 40px;
	background: #FAFAFA url(../img/header_bg01.png) no-repeat center center;
}
header.header02 .fv{
	position: relative;
	padding-bottom: 0;
}
header.header02 .book{
	max-width: 220px;
	position: absolute;
	bottom: -20px;
	right: 90px;
	margin-right: 0;
}
header.header03{
	background: #FAFAFA url(../img/yosou_fv_img.png) no-repeat center bottom;
}
header.header03 .fv{
	padding-top: 50px;
}
header.header03 .book{
	max-width: 512px;
	right: -30px;
}
header.header03 .fv .block .pre{
	font-size: 2.8rem;
	line-height: 1.4;
	margin: 0 0 30px;
}
header.header03 .fv .block .pre span{
	border-bottom: 1px solid #000;
	padding-bottom: 3px;
}
header.header03 .fv .block{
	width: 667px;
	padding: 0;
}
header .fv .block .d1231{
	margin-top: 20px;
	font-size: 2.2rem;
    font-weight: bold;
    color: #fd0000;
    text-align: center;
}
header .fv .block .d1231+.btn{
	margin-top: 10px;
}
/* .btn {
	width: 494px;
	font-weight: bold;
	font-size: 2.7rem;
	box-sizing: border-box;
}
.btn a{
	display: table;
	width: 100%;
	height: 87px;
	text-align: center;
	background: url(../img/btn_bg.png) 0 0 no-repeat;
}
.btn a .btn_inn{
	display: table-cell;
	vertical-align: middle;
}
.btn a .btn_inn span{
	display: inline-block;
	line-height: 1.6;
	background: url(../img/btn_yaji.png) 0 center no-repeat;
	padding: 0 0 0 45px;
} */
.wrap{
	width: 1050px;
	margin: 0 auto;
}

.detail .wrap{
	padding: 45px 0;
}
.detail .wrap+.wrap{
	padding-top: 0;
}
.detail p .bold{
	font-weight: bold;
}
.detail img{
	float: right;
	margin: 0 0 100px 20px;
}
.detail img.float-none{
	float: none;
	margin: 35px 0;
	display: block;
	width: auto;
}
.detail h2{
	font-size: 4.0rem;
	line-height: 1.4;
	font-weight: bold;
	text-align: center;
	margin: 0 0 20px;
}
.detail h2.x2{
	margin-top: 40px;
}
.detail h2.mb0{
	margin-bottom: 0;
}
.detail h2 span{
	display: block;
	color: #066db3;
	font-size: 1.2rem;
	margin-top: 8px;
}
.detail .block{
	background: url(../img/detail_bg.jpg) center center no-repeat;
	background-size: cover;
	padding: 30px 0 35px;
}
.detail .block ul{
	max-width: 1050px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid #ccc;
	padding: 30px 15px 60px;
	margin: 0 auto;
}
.detail .block ul li,
.detail .check li{
	background: url(../img/icon_check.png) 0 2px no-repeat;
	background-size: 24px auto;
	font-size: 1.8rem;
	line-height: 1.6;
	padding: 0 0 0 38px;
}
.detail .check li{
	background: url(../img/icon_check.png) 0 5px no-repeat;
	background-size: 24px auto;
}
.detail .block ul li span,
.detail .check li span{
	font-weight: bold;
}
.detail .block ul li+li,
.detail .check li+li{
	margin-top: 25px;
}
.detail.lecture h2{
	margin-bottom: 40px;
}
.detail.lecture .blue.serif{
	color: #0462a3;
	font-family: serif;
	font-size: 2.2rem;
	font-style: italic;
}
.detail .ttl{
	text-align: center;
	font-weight: bold;
	font-size: 4.0rem;
	color: #cc0000;
	margin: 50px 0 0;
}
.detail.lecture .check{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 960px;
	margin: 0 auto;
}
.detail.lecture .check li{
	width: 48%;
	box-sizing: border-box;
	font-weight:bold;
	font-size:2.3rem;
	margin-top: 20px;
}
.detail.lecture .check li:nth-child(-n+2){
	margin-top: 0;
}
@media screen and (max-width : 767px){
	
	.detail.lecture h2{
		margin-bottom: 5%;
	}
	.detail.lecture .check li{
		width: 100%;
		font-size:1.6rem;
		background:url(../img/icon_check.png) 0 2px no-repeat;
		background-size:18px auto;
		margin-top: 10px;
		padding:0 0 0 25px;
	}
	.detail.lecture .check li:nth-child(-n+2){
		margin-top: 10px;
	}
	.detail.lecture .check li:first-child{
		margin-top: 0;
	}
	.detail .ttl{
		font-size: 2.0rem;
		margin: 5% 0 3%;
	}
	.detail.lecture .blue.serif{
		font-size: 1.6rem;
	}
	
}

.review h2{
	background: url(../img/review_bg.jpg) center center no-repeat #1c1c1c;
	color: #fff;
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.0;
	text-align: center;
	margin: 0 0 45px;
	padding: 80px 0;
}
.review h2 span{
	display: block;
}
.review{
	padding: 0 0 80px;
}
.review .txt{
	position: relative;
	margin-top: 0;
}
.review .txt small{
	display: block;
	text-align: right;	
}
.review .box_review .txt{
	border: 1px solid #999;
	border-radius: 5px;
	padding: 20px 15px;
}
.review .box_review:nth-child(odd) .name{
	float: left;
	width: 116px;
	margin-left: 10px;
}
.review .box_review:nth-child(odd) .txt{
	float: right;
	width: 820px;
	margin-right: 10px;
}
.review .box_review:nth-child(odd) .txt:before{
	content: "";
	position: absolute;
	top: 50%;
	left: -40px;
 	margin-top: -20px;
	border: 20px solid transparent;
	border-right: 20px solid #fff;
 	z-index: 2;
}
.review .box_review:nth-child(odd) .txt:after{
	content: "";
	position: absolute;
	top: 50%;
	left: -41px;
 	margin-top: -20px;
	border: 20px solid transparent;
	border-right: 20px solid #999;
 	z-index: 1;
}
.edge .review .box_review:nth-child(odd) .txt:before,
.ie .review .box_review:nth-child(odd) .txt:before{
	left: -40px;
 	margin-top: -21px;
	border: 21px solid transparent;
	border-right: 21px solid #FFF;
}
.review .box_review:first-child .name{
	padding-top: 40px;
}
.review .box_review:first-child .txt:before,
.review .box_review:first-child .txt:after{
	top: 30%;
}
.review .box_review:nth-child(3) .name{
	padding-top: 10px;
}
.review .box_review:nth-child(even) .name{
	float: right;
	width: 113px;
	margin-right: 32px;
}
.review .box_review:nth-child(even) .txt{
	float: left;
	width: 820px;
	margin-left: 10px;
}
.review .box_review:nth-child(even) .txt:before{
	content: "";
	position: absolute;
	top: 50%;
	right: -40px;
 	margin-top: -20px;
	border: 20px solid transparent;
	border-left: 20px solid #FFF;
 	z-index: 2;
}
.edge .review .box_review:nth-child(even) .txt:before,
.ie .review .box_review:nth-child(even) .txt:before{
	right: -40.5px;
 	margin-top: -21px;
	border: 21px solid transparent;
	border-left: 21px solid #FFF;
}
.review .box_review:nth-child(even) .txt:after{
	content: "";
	position: absolute;
	top: 50%;
	right: -41px;
 	margin-top: -20px;
	border: 20px solid transparent;
	border-left: 20px solid #999;
 	z-index: 1;
}
.review .box_review + .box_review{
	margin-top: 40px;
}

.btn02{
	text-align: center;
}
.btn02 + .notes{
	margin-top: 10px;
	text-align: center;
}
.btn02 + .notes + .notes{
	font-size: 1.6rem;
	margin-top: 10px;
	text-align: center;
}
.btn02 + .notes.small{
	font-size: 1.5rem;
}
.btn02 + .notes.small.strong{
	font-size: 1.4rem;
}
.btn02 + .notes.small.strong strong{
	font-size: 1.6rem;
}
.btn02 + .notes.small.strong2{
	font-size: 1.3rem;
}
.btn02 + .notes.small.strong2 strong{
	font-size: 1.7rem;
}


.mokuji{
	padding-bottom: 50px;
}
.mokuji h2{
	background: url(../img/bg3.jpg) left center no-repeat #1c1c1c;
	color: #fff;
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.0;
	margin: 0 0 45px;
	padding: 63px 0;
	position: relative;
}
.mokuji h2 span{
	display: block;
}
.mokuji h2 small{
	display: block;
    font-size: 2.4rem;
    margin-bottom: 15px;
}
.mokuji .wrap{
	position: relative;
}
.mokuji .index_box1{
	margin-bottom: 60px;
}
.mokuji .index_box1 .left{
	float: left;
	width: 50%;
}
.mokuji .index_box1 .right{
	float: right;
	width: 50%;
}
.mokuji .index_box1 p{
	font-size: 1.8rem;
}
.mokuji .index_box1 ul li{
	font-size: 1.6rem;
	list-style-type: none;
	position: relative;
	text-align:left;
	margin: 0 0 0.3em 2.0em;
}
.mokuji .index_box1 ul li:after{
	display: block;
	content: '';
	position: absolute;
    top: 0.35em;
    left: -1.2em;
	width: 10px;
	height: 10px;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 100%;
}
.mokuji .index_box1 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;
}
.mokuji .index_box1 p.index_chapter span.smaller{
	font-size: 1.8rem;
}
.mokuji .index_box1 p.index_chapter span.red {
	color: #ed1c24;
}
.mokuji .boder {
 	border-bottom: dotted 1px #CCC;
    margin-bottom: 1.5rem;
}
.mokuji .book {
    position: absolute;
    right: 80px;
    top: -265px;
}

.intro h2{
	color: #000;
	font-size: 4.8rem;
	text-align: right;
	font-weight: bold;
	line-height: 1.0;
	margin: 0 0 45px;
	position: relative;
	background-color: #f7f7f7;
}
.intro h2 span{
	background: url(../img/author_img1.png) left center no-repeat ;
	padding: 133px 0 133px 0;
	display: block;
}
.intro .inner01_left{
	width: 610px;
	float: left;
}
.intro .ttl + p{
	margin-bottom: 50px;
	padding: 0;
}
.intro p{
	width: 550px;
}
.intro p + p{
	margin-top: 35px;
}
.intro .ttl{
	font-size: 3.6rem;
	color: #cc0000;
	line-height: 4.8rem;
	font-weight: bold;
	margin-bottom: 60px;
	width: 610px;
}
.intro .inner01_right{
	float: right;
	width: 366px;
}
.intro .inner01_right p + p{
	margin-top: 0;
}
.intro .inner01_right p{
	font-size: 1.2rem;
	line-height: 2.4rem;
	width: 368px;
	color: #000;
}
.intro .inner01_right > p{
	width:320px;
	margin: 0 auto;
}
.intro .inner01_right > p img{
	width:100%;
}
.intro .gray_box{
	padding: 10px 0;
	margin-top: 30px;
	background: #f0f0f0;
	border: 1px solid #cccccc;
}
.intro .gray_box > p:first-child{
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
}
.intro .gray_box > p:last-child{
	width: 90%;
	font-size: 1.4rem;
	margin: auto;
}
.intro .gray_box ul{
	width: 96%;
	margin: auto;
	display: flex;
    flex-wrap: wrap;
}
.intro .gray_box ul li{
	width: 49%;
	margin-bottom: 10px;
}
.intro .gray_box ul li:nth-child(even){
	margin-left: 2%;
}
.intro .gray_box ul li img{
	display: block;
	margin: auto;
}
.intro .gray_box ul li p{
	width: auto;
	margin: auto;
	margin-top: 7px;
	padding-left: 1em;
	text-indent: -1em;
	max-width: 155px;
	line-height: 1.6;
}
.intro .gray_box ul li:nth-child(2) p{
	max-width: 110px;
}
.intro .gray_box ul li:nth-child(3) p{
	max-width: 120px;
}
.intro.yogen .gray_box{
	text-align: center;
	padding: 50px 0 20px;
}
.intro.yogen .gray_box p{
	font-size: 1.4rem;
	width: 92%;
	margin: 15px auto;
}
.intro.yogen .gray_box p:first-of-type{
	text-align: center;
	margin: 5px auto 20px;
}
.intro.yogen .midashi{
	text-align: center;
	font-weight: bold;
	font-size: 3.6rem;
	margin: 100px 0 0;
}
.intro.yogen .wrap+.wrap{
	margin-top: 50px;
}
.intro.yogen .wrap+.wrap p{
	width: 100%;
}
.intro.yogen .wrap+.wrap > p+p{
	margin-top: 2em;
}
.intro.yogen .wrap+.wrap .x2{
	margin-top: 3em;
}
.intro.yogen .wrap+.wrap .bold{
	font-weight: bold;
}
.intro.yogen .wrap+.wrap .ul{
	text-decoration: underline;
}
.last_text{
	margin-top: 70px;
}
.last_text .wrap > div{
	margin-bottom: 60px;
}
.last_text h3{
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 40px;
}
.last_text .inner01 img{
	float: left;
	margin-right: 60px;
}
.last_text .inner04{
	margin-top: 70px;
}
.last_text .inner04 table{
	border: 1px solid #a0a0a0;
	width: 890px;
	margin: auto;
	border-collapse: collapse;
}
.last_text .inner04 table th,
.last_text .inner04 table td{
	font-size: 1.4rem;
	line-height: 2.4rem;
	border: 1px solid #a0a0a0;
	text-align: center;
	padding: 8px 5px;
}
.last_text .inner04 table th{
	font-size: 1.6rem;
	background: #d3d3d3;
	font-weight: bold;
}
.last_text .inner04 table th:first-child,
.last_text .inner04 table td:first-child{
	width: 200px;
}
.last_text .inner04 table th:nth-child(2),
.last_text .inner04 table td:nth-child(2){
	width: 165px;
}
.last_text .inner04 table th:nth-child(3),
.last_text .inner04 table td:nth-child(3){
	width: 168px;
}
.last_text .inner04 table th:nth-child(4),
.last_text .inner04 table td:nth-child(4){
	width: 358px;
}
.last_text .inner04 table td:nth-child(4){
	text-align: left;
	padding: 8px;
}
.last_text .inner04 table tbody tr:nth-child(2) td:nth-child(3){
	font-size: 1.2rem;
	
}
.last_text .faq{
	margin: 50px 0;
}
.last_text .faq dt{
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4;
}
.last_text .faq dt span{
	color: #cc0000;
}
.last_text .faq dd{
	line-height: 1.6;
	border-bottom: 1px dotted #ccc;
	padding: 10px 0 15px 0;
	margin: 0 0 25px;
}
.last_text .red.bold{
	text-align: center;
	font-weight: bold;
	font-size: 3.4rem;
	color: #fd0000;
	margin: 0 0 10px;
}
.last_text .btn{
	text-align: center;
}

#qa h2{
	background: url(../img/bg3.jpg) left center no-repeat #1c1c1c;
	color: #fff;
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.0;
	margin: 0 0 45px;
	padding: 63px 0;
	position: relative;
	text-align: center;
}
#qa h2 span.small{
    margin-bottom: 15px;
    font-size: 2.4rem;
	display: block;
}
#qa dl{
	padding: 30px 0 25px;
	border-bottom: 1px dotted #cccccc;
}
#qa dl dt{
	font-size: 2.4rem;
	line-height: 1.4;
	font-weight: bold;
}
#qa dl dt .q{
	color: #cc0000;
}
#qa dl dd{
	font-size: 1.8rem;
	line-height: 1.6;
	margin-top: 15px;
}
#qa .btn02{
	margin-top: 70px;
}

#service{
	background: #f1f8fb;
	margin-top: 60px;
	padding: 50px 0;
}
#service h3{
    font-size: 3.6rem;
    text-align: center;
    margin-bottom: 40px;
}
#service ul{
	display: flex;
	justify-content: space-between;
}
#service  li{
	max-width: 320px;
	width: 32%;
}
#service .service_ttl{
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	background: #eeeeee;
	padding: 10px 15px;
	border-radius: 8px;
    font-weight: bold;
    display: table;
    width: 100%;
    box-sizing: border-box;
}
#service .service_ttl span{
	display: table-cell;
	vertical-align: middle;
}
#service .img{
	margin-top: 20px;
}
#service .info{
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
}
#service .info dl{
	width: 47%;
}
#service .info dl.ml{
	margin-left: 5%;
}
#service .info dl.mt{
	margin-top: 20px;
}
#service .info dl.w100{
	width: 100%;
}
#service .info dt{
	line-height: 1.4;
    border-left: 3px solid #45B1C7;
    padding-left: 7px;
    font-size: 1.6rem;
    margin-bottom: 10px;
    font-weight: bold;
}
#service .info dd{
	line-height: 1.8;
    font-size: 1.4rem;
}
#service .info dd .red{
	color: #ab2522;
    font-weight: bold;
}

.d1231_area {
	margin-bottom: 35px;
}
.d1231_area .bold{
	font-weight: bold;
}
.d1231_area .ttl{
    font-size: 4rem;
    font-weight: bold;
    color: #fd0000;
    text-align: center;
}
.d1231_area .ttl .st1{
    font-size: 6rem;
}
.d1231_area .ttl .st2{
    font-size: 6rem;
}
.d1231_area.d0108 .ttl .st1{
    font-size: 5.5rem;
}
.d1231_area.d0108 .ttl .st2{
    font-size: 5.5rem;
}
.d1231_area .list{
	display: flex;
	margin: 35px 0;
}
.d1231_area .list ul{
	margin-left: 20px;
}
.d1231_area .list ul li {
	position: relative;
	padding-left: 20px;
}
.d1231_area .list ul li+li{
	margin-top: 25px;
}
.d1231_area .list ul li::after {
	display: block;
	content: '';
	position: absolute;
	top: .4em;
	left: 0;
	width: 13px;
	height: 7px;
	border-left: 2px solid #000;
	border-bottom: 2px solid #000;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.d1231_txt{
	margin-top: 20px;
	font-size: 2.2rem;
    font-weight: bold;
    color: #fd0000;
    text-align: center;
}
.d1231_txt+.btn02{
	margin-top: 10px!important;
}

footer {
	color: #FFF;
	background-color: #000;
	padding: 35px;
}
footer .link {
	font-size: 1.4rem;
	line-height: 2;
	text-align: center;
}
footer .link a {
	color: #FFF;
	text-decoration: none;
}
footer .link a:hover {
	text-decoration: underline;
	color: #999;
}
footer .copy {
	text-align: center;
	color: #FFF;
	font-size: 1.2rem;
	line-height: 2;
}

@media screen and (max-width : 1075px){
	.d1231_area .ttl{
	    font-size: 3.4rem;
	}
	.d1231_area .ttl .st1{
	    font-size: 4.5rem;
	}
	.d1231_area .ttl .st2{
	    font-size: 4.5rem;
	}
	.d1231_area.d0108 .ttl .st1{
	    font-size: 4rem;
	}
	.d1231_area.d0108 .ttl .st2{
	    font-size: 4rem;
	}
}



@media screen and (min-width : 768px){
	
	.sp{
		display:none!important;
	}
	.btn a,
	a img{
	    -webkit-backface-visibility: hidden;
	    backface-visibility: hidden;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
		text-decoration: none;
	}
	.btn a:hover,
	a img:hover{
		opacity: 0.7;
	}

}

@media screen and (max-width: 1220px) {
	
	body{min-width:inherit;}
	img{ max-width:100%; height:auto;}
	p+p{
		margin-top: 3%;
	}

	.x2{
		margin-top: 45px;
	}

	header .wrap,.wrap{
		width: 96%;
	}

	header .fv{
		width: 96%;
		padding: 3% 0 5%;
	}
	header .fv .block{
	    width: 68%;
	}
	header.header03 .fv .block{
		width: 59%;
	}
	header .fv .block h1{
		margin-bottom: 6%;
	}
	header.header03 .fv{
		padding: 20px 0 0;
	}


	header .fv > img {
		width: 30%;
	    margin-right: 0;
	    max-width: 285px;
	}
	header .fv .block .pre{
		font-size: 2.8rem;
	}
	header.header03 .fv .block .pre{
		font-size:2.2rem;
	}
	header .fv .block .red span{
		font-size: 3.5rem;
		margin-left: 2%;
	}
	header .fv .block .red.long_txt span{
		font-size: 2rem;
	}
	header .btn{
		width: 90%;
		margin: 3% auto 2%;
	}
	header .tel .tel-link a,
	header .tel .tel-link span{
		color: #fff;
		text-decoration: none;
	}
	header .tel .tel-link a:hover{
		text-decoration: none;
	}

	header.header02{
		background-size: contain;
		background-position: center bottom;
	}
	header.header02 .book{
		width: 19%;
		right: 10%;
	}

	header .fv > img.review_img{
		width: 15%;
		right: 0;
		top: auto;
		bottom: 32vw;
	}
	header .fv > img.review_img2{
		width: 13%;
	}


	.detail .wrap{
		padding: 5% 0;
	}
	.detail img {
	    margin: 0 0 3% 3%;
	    width: 40%;
	}
	.detail img.img2{
		max-width: 213px;
	}
	.detail .block ul{
		width: 95%;
	}
	.detail .block ul li+li{
		margin-top: 3%;
	}

	.review h2{
		font-size: 3.2rem;
	}
	
	.review .box_review:nth-child(odd) .name{
		width: calc(18% - 10px);
	}
	.review .box_review:nth-child(odd) .txt{
		width: calc(75% - 10px);
	}
	.review .box_review:nth-child(even) .name{
		width: calc(18% - 10px);
	}
	.review .box_review:nth-child(even) .txt{
		width: calc(72% - 10px);
	}
	.review .box_review:nth-child(odd) .txt:before,
	.review .box_review:nth-child(odd) .txt:after,
	.review .box_review:nth-child(even) .txt:before,
	.review .box_review:nth-child(even) .txt:after{
		top: 30%;
	}
	.mokuji h2{
		font-size: 3.2rem;
	}
	.mokuji .book {
	    right: 0%;
	    top: -9%;
	    width: 25%;
	}

	.intro p{
		width: 100%;
	}
	.intro .inner01_left{
		width: 62%;
	}
	.intro .inner01_right{
		width: 35%;
	}
	.intro .inner01_right p{
		width: 100%;
	}
	.intro .ttl{
		font-size: 3.2rem;
	}
	.intro.yogen .ttl{
		width:auto;
		font-size:2.8rem;
		margin-bottom:30px;
	}
	.last_text .inner01 img{
		margin-right: 3%;
		margin-bottom: 3%;
	}
	.last_text .wrap > div{
		margin-bottom: 6%;
	}
	.last_text .inner04{
		margin-top: 7%;
	}
	.last_text h3{
		font-size: 3.2rem;
		margin-bottom: 5%;
	}

	.last_text .inner04 table{
		width: 100%;
		max-width: 890px;
	}
	.last_text .inner04 table th, .last_text .inner04 table td{
		font-size: 1.3rem;
	}

}


@media screen and (max-width : 767px){

	.pc{
		display:none;
	}
	.sp{
		display: block!important;
	}
	
	p, table, dl, ol{font-size:1.4rem;line-height:1.5;}

	.x2{
		margin-top: 6%;	
	}

	header .wrap{
		display: table;
	}
	header .obi p.logo{
		display: table-cell;
		vertical-align: middle;

	}
	header .obi img{
		width: 100%;
		display: block;
	    float: none;
		max-width: 148px;
		margin-top: 0;
	}
	header .tel .tel-link {
	    font-size: 2rem;
	    padding: 0 0 0 25px;
	    background-size: contain;
	}
	header .tel .tel-link a,
	header .tel .tel-link span{
		color: #fff;
		text-decoration: none;
	}
	header .tel .tel-link a:hover{
		text-decoration: none;
	}
	header .tel {
		width: 65%;
	    float: none;
		display: table-cell;
		vertical-align: middle;
	    text-align: right;	
	    padding: 10px 0 5px;
	}
	header .tel p{
		font-size: 1.2rem;
		line-height: 1.6;
	    text-align: right;	
	}
	header .fv{
		padding: 7% 0 5%;
	}
	header .fv .block{
		padding-top: 0;
	}
	header .fv .block .pre{
		font-size: 1.4rem;
		margin-bottom: 3%;	
	}
	header.header02.header03{
		background-size: 110%;
	}
	header.header03 .fv .block{
		width: 58%;
	}
	header.header03 .fv .block .pre{
		font-size: 1.2rem;
		margin: 0 0 5%;
	}
	header .btn{
		width: 80%;
	}
	header .fv .block .red{
		font-size: 1.4rem;
	}
	header .fv .block .red span{
		font-size: 1.8rem;
		display: block;
		margin-top: 2%;
	}
	header .fv .block p{
		font-size: 1.2rem;
	}
	header .fv .block p.notes.small{
		font-size: 1.1rem;
		text-align: left;
		width: 76%;
		margin: 0 auto 0 0;
	}
	header .fv .block p.notes.small.strong{
		font-size: 1rem;
	}
	header .fv .block p.notes.small.strong strong{
		font-size: 1.2rem;
	}
	header .fv .block p.notes.small.strong2{
		font-size: 0.9rem;
	}
	header .fv .block p.notes.small.strong2 strong{
		font-size: 1.3rem;
	}
	header .fv > img{
		margin-top: 5%;	
		max-width: 155px;
	}
	header .fv .block .notes + .notes{
		font-size: 1.2rem;
		text-align: left;
	}

	header.header02{
		background-size: 125%;
		background-position: right 23% bottom;
		padding-bottom: 5%;
	}
	header.header02.review_header{
		background-position: right 45% bottom;
	}
	header.header02 .book{
		width: 24%;
		right: 6%;
		bottom: -3%;
	}

	header .fv > img.review_img {
	    width: 21%;
	    bottom: 35vw;
	}
	header .fv > img.review_img2 {
	    width: 13%;
	    bottom: 33vw;
	}
	header.header02.review_header .book{
		bottom: -7%;
		width: 22%;
	}

	header .fv .block .d1231{
		margin-top: 10px;
		font-size: 1.4rem;
		line-height: 1.4;
	    text-align:  left;
	}
	header .fv .block .d1231+.btn{
		margin-top: 5px;
	}

	.detail .wrap{
		padding: 8% 0;
	}
	.detail h2{
		font-size: 2rem;
	    font-weight: bold;
	    text-align: center;
	    line-height: 1.4;
	    margin-bottom: 7%;
	    color: #000;
	}
	.detail h2.x2{
		margin-top: 5%;
	}
	.detail h2 span {
	    font-size: 1.2rem;
	    margin-top: 8px;
	}

	.detail .block ul{
		padding: 6% 2% 6%;
	}
	.detail .block ul li {
	    background: url(../img/icon_check.png) 0 2px no-repeat;
	    background-size: 20px auto;
	    font-size: 1.4rem;
	    line-height: 1.5;
	    padding: 0 0 0 25px;
	}


	.review{
		padding-bottom: 10%;	
	}
	.review h2{
		padding: 10% 0 ;
		font-size: 1.8rem;
		line-height: 1.5;
		margin-bottom: 8%;	
	}
	.review .box_review:nth-child(odd) .name,
	.review .box_review:nth-child(even) .name{
		float: none;
		width: 100%;
		margin-right: 0;
		margin-left: 0;
		text-align: center;
		box-sizing: border-box;
	}
	.review .box_review:nth-child(odd) .txt,
	.review .box_review:nth-child(even) .txt{
		float: none;
		width: 100%;
		margin-top: 20px;
		margin-right: 0;
		margin-left: 0;
		box-sizing: border-box;
	}
	.review .box_review:nth-child(odd) .txt:before,
	.review .box_review:nth-child(even) .txt:before{
		content: "";
		position: absolute;
		top: -20px;
		right: auto;
		left: 50%;
		margin-left: -20px;
		border: 20px solid transparent;
		border-bottom: 20px solid #FFF;
		z-index: 2;
	}
	.review .box_review:nth-child(odd) .txt:after,
	.review .box_review:nth-child(even) .txt:after{
		content: "";
		position: absolute;
		top: -21px;
		right: auto;
		left: 50%;
		margin-left: -20px;
		border: 20px solid transparent;
		border-bottom: 20px solid #999;
		z-index: 1;
	}
	.review .box_review:first-child .name{
		padding-top: 0;
	}
	.review .box_review + .box_review{
		margin-top: 5%;
	}
	.btn02 + .notes,.btn02 + .notes + .notes{
		font-size: 1.2rem;
	}
	.btn02 + .notes + .notes{
		text-align: left;
	}
	.btn02 + .notes.small{
		font-size: 1.2rem;
		text-align: left;
	}
	.btn02 + .notes.small.strong{
		font-size: 1.1rem;
	}
	.btn02 + .notes.small.strong strong{
		font-size: 1.3rem;
	}
	.btn02 + .notes.small.strong2{
		font-size: 1rem;
	}
	.btn02 + .notes.small.strong2 strong{
		font-size: 1.4rem;
	}


	.mokuji{
		padding-bottom: 10%;	
	}
	.mokuji h2 {
	    padding: 10% 0 ;
		font-size: 1.8rem;
		line-height: 1.5;
		margin-bottom: 8%;	
	}
	.mokuji h2 small{
		font-size: 1.4rem;
		margin-bottom: 1%;	
	}
	.mokuji .index_box1{
		float: none;
		width: 100%;
		margin-bottom: 8%;	
	}
	.mokuji .index_box2{
		float: none;
		width: 100%;
	}
	.mokuji .index_box1 p{
		font-size: 1.4rem;
	}
	.mokuji .index_box1 ul{
		float: none!important;
		width: 100%!important;
	}
	.mokuji .index_box1 ul li{
		font-size: 14px;
		list-style-type: none;
		position: relative;
		text-align:left;
		margin: 0 0 0.3em 1.5em;
	}
	.mokuji .index_box1 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%;
	}
	.mokuji .index_box1 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;
	}
	.mokuji .index_box1 p.index_chapter span.smaller {
		font-size: 13px;
	}
	.mokuji .index_box1 p.index_chapter span.red{
		color: #ed1c24;
	}
	.mokuji .book{
		float: right;
		margin-bottom: 3%;	
	    position: static;
	    font-size: 1.5rem;
	    margin-left: 10px;
	}

	.intro h2 {
	    font-size: 2.2rem;
	    margin: 0 0 8%;
	}
	.intro h2 span {
	    background: url(../img/author_img1.png) left center no-repeat;
	    background-size: auto 100%;
	    padding: 10% 10% 10% 0;
	    display: block;
	    box-sizing: border-box;
	}
	.intro .ttl {
	    font-size: 1.8rem;
	    color: #cc0000;
	    line-height: 2.4rem;
	    font-weight: bold;
	    margin-bottom: 6%;
	    max-width: 610px;
	    width: 100%;
	}
	.intro.yogen .ttl{
		font-size:2.4rem;
		line-height:1.4;
	}
	.intro.yogen .ttl br{
		display:none;
	}
	.intro .inner01_left{
		max-width: none;
		width: 100%;
		float: none;
	}
	.intro .inner01{
		margin-top: 5%;
	}
	.intro .ttl + p{
		margin: 0 auto 5%!important;
		padding: 0;
		width: 70%;
	}
	.intro .img{
		width: 50%!important;
		margin:  auto!important;
		display: block!important;
	}
	.intro p{
		width: 100%;
	}
	.intro p + p{
		margin-top: 4%;
	}
	.intro .inner01_right{
		float: none;
		max-width: none;
		width: 100%;
		margin-top: 8%;
	}
	.intro .inner01_right p + p{
		margin-top: 2%;
	}
	.intro .inner01_right p{
		font-size: 1rem;
		line-height: 2rem;
		color: #000;
		margin: 0 auto;
	}
	.intro .inner01_right img {
		margin-top: 5%;
	}
	.last_text{
		margin-top: 10%;	
	}
	.last_text h3{
		font-size: 1.8rem;
		line-height: 1.5;
	}
	.last_text .inner01 img{
		width: 40%;
		max-width: 170px;
	}
	.last_text .inner04 table th, .last_text .inner04 table td{
		font-size: 1.2rem;
	}
	.last_text .inner04 table th{
		font-size: 1.4rem;
	}
	.last_text .inner04 .table{
	}
	.last_text .inner04 table{
		width: 600px;
	}
	.last_text .inner04 .table{
		overflow: auto;
	}
	.last_text .inner04 .table::-webkit-scrollbar{
		height: 4px;
	}
	.last_text .inner04 .table::-webkit-scrollbar-track{
		background: #eeeeee;
	}
	.last_text .inner04 .table::-webkit-scrollbar-thumb {
		background: #a0a0a0;
	}


	#qa  h2 {
	    padding: 8% 0 ;
		font-size: 1.8rem;
		line-height: 1.5;
		margin-bottom: 8%;	
	}
	#qa  h2 span.small{
		font-size: 1.4rem;
		margin-bottom: 1%;
	}
	#qa dl{
		padding: 6% 0 5%;
	}
	#qa dl dt{
		font-size: 1.8rem;
	}
	#qa dl dd{
		font-size: 1.4rem;
		margin-top: 10px;
	}
	#qa .btn02{
		margin-top: 10%;
	}

	#service{
		margin-top: 10%;
		padding: 8% 0;
	}
	#service h3{
	    font-size: 1.8rem;
	    line-height: 1.5;
	    margin-bottom: 5%;
	}
	#service ul{
		display: block;
	}
	#service li{
		max-width: 100%;
		width: 100%;
	}
	#service li + li{
		margin-top: 10%;
	}
	#service .service_ttl{
		font-size: 1.6rem;
		padding: 10px 15px;
		display: block;
	}
	#service .service_ttl span{
		display: block;
	}
	#service .img{
		margin: 3% auto 0;
		text-align: center;
		width: 70%;
	}
	#service .info{
		margin-top: 3%;
		display: flex;
		flex-wrap: wrap;
	}
	#service .info dl{
		width: 47%;
	}
	#service .info dl.ml{
		margin-left: 5%;
	}
	#service .info dl.mt{
		margin-top: 15px;
	}
	#service .info dl.w100{
		width: 100%;
	}
	#service .info dt{
	    padding-left: 7px;
	    font-size: 1.6rem;
	    margin-bottom: 10px;
	}
	#service .info dd{
		line-height: 1.8;
	    font-size: 1.4rem;
	}
	#service .info dd .red{
		color: #ab2522;
	    font-weight: bold;
	}

	.d1231_area {
		margin-top: 14%;
		margin-bottom: 5%;
	}
	.d1231_area .ttl{
	    font-size: 1.6rem;
	}
	.d1231_area .ttl .st1{
	    font-size: 2rem;
	}
	.d1231_area .ttl .st2{
	    font-size: 2rem;
	}
	.d1231_area.d0108 .ttl{
	    font-size: 1.4rem;
	}
	.d1231_area.d0108 .ttl .st1{
	    font-size: 1.7rem;
	}
	.d1231_area.d0108 .ttl .st2{
	    font-size: 1.7rem;
	}
	.d1231_area .list{
		display: block;
		margin: 3% 0;
	}
	.d1231_area .list .img{
		width: 40%;
		margin: 0 auto 3%;
		max-width: 200px;
	}
	.d1231_area .list ul{
		margin-left: 3%;
	}
	.d1231_area .list ul li {
		position: relative;
		padding-left: 20px;
		font-size: 1.4rem;
	}
	.d1231_area .list ul li+li{
		margin-top: 3%;
	}
	.d1231_area .list ul li::after {
		display: block;
		content: '';
		position: absolute;
		top: .4em;
		left: 0;
		width: 10px;
		height: 6px;
		border-left: 2px solid #000;
		border-bottom: 2px solid #000;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.d1231_txt{
		margin-top: 10px;
		font-size: 1.4rem;
		line-height: 1.4;
		text-align: left;
	}
	.d1231_txt+.btn02{
		margin-top: 2%!important;
	}


	footer {
		color: #FFF;
		background-color: #000;
		padding: 4%;
	}
	footer .link {
		font-size: 1.2rem;
		line-height: 2;
		text-align: center;
	}
	footer .link a,
	footer .copy a {
		color: #FFF;
		text-decoration: none;
	}
	footer .link a:hover,
	footer .copy a:hover {
		text-decoration: underline;
		color: #999;
	}
	footer .copy {
		margin-top: 5%;	
		text-align: left;
		color: #FFF;
		font-size: 1rem;
		line-height: 2;
	}

}



/* @media screen and (max-width : 414px){

header .fv > img.review_img2 {
	width: 21%;
		bottom: 68vw;
}

} */


/*---------------------------
	fv_u
-----------------------------*/

header.fv_u_header{
	background-position: center bottom;
}
header.fv_u_header .book{
	bottom: -40px;
}

.fv_u {
	background: #000;
	padding: 10px 0;
}
.fv_u ul{
	background: #fff;
	display: flex;
	justify-content: center;
}

@media screen and (max-width : 767px){

	header.fv_u_header .book{
		bottom: -3%;
	}
	.fv_u ul{
		flex-wrap: wrap;
		padding-top: 2px;
	}
	.fv_u ul li{
		height: 11vw;
	}
	.fv_u ul li img{
		vertical-align: middle;
		width: auto;
		height: 100%;
	}

}

/*---------------------------
	author_movie
-----------------------------*/

.author_movie{
	margin-top: 50px;
}
.author_movie .moviebox{
	display: flex;
	justify-content: space-between;
}
.author_movie .movie{
	max-width: 500px;
	width: 48%;
}
.author_movie .moviebox .txt{
	width: 50%;
	max-width: 530px;
	font-size: 2.4rem;
}
.author_movie .moviebox .txt .bold{
	font-weight:bold;
}
.author_movie .authorinfo{
	margin-top: 30px;
}
.author_movie .authorinfo p.name{
	font-size: 2.4rem;
}
.author_movie .authorinfo p+p{
	margin-top: 0;
}
.author_movie .authorinfo p strong{
	font-size: 1.3em;
	font-weight: normal;
}

@media screen and (max-width : 767px){

	.author_movie{
		margin-top: 8%;
	}
	.author_movie .moviebox{
		display: block;
	}
	.author_movie .movie{
		max-width: 100%;
		width: 100%;
	}
	.author_movie .moviebox .txt{
		width: 100%;
		max-width: 100%;
		font-size: 1.6rem;
		margin-top: 5%;
	}
	.author_movie .authorinfo{
		margin-top: 5%;
	}
	.author_movie .authorinfo p.name{
		font-size: 1.6rem;
	}
	.author_movie .authorinfo p strong{
		font-size: 1.2em;
	}


}

.author_movie.bgwrap{
	background: url(../img/author_movie_bg.jpg) 0 0 no-repeat;
	background-size: cover;
	padding: 0 0 30px;
	margin: 0;
}
.author_movie.bgwrap h2{
	background: none;
	padding: 40px 0;
	margin: 0;
}
.author_movie.bgwrap .wrap{
	background: #fff;
	padding: 20px 30px;
	box-sizing: border-box;
}
.author_movie.bgwrap .ttl{
	text-align: center;
	font-weight:bold;
	color: #0b5b92;
	font-size: 3.6rem;
}
.author_movie.bgwrap .name{
	text-align: right;
	font-size: 3.0rem;
	margin: 0;
}
.author_movie.bgwrap .moviebox{
	flex-flow: row-reverse;
	margin: 20px 0 0;
}
.author_movie .moviebox .txt{
	text-align: left;
	font-size: 1.8rem;
}

/*---------------------------
	author_movie_ttl
-----------------------------*/

.author_movie h2 {
    background: url(../img/bg3.jpg) left center no-repeat #1c1c1c;
    color: #fff;
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1.0;
    margin: 0 0 45px;
    padding: 63px 0;
    position: relative;
    text-align: center;
}

@media screen and (max-width: 1220px) {

	.author_movie.bgwrap .ttl{
		font-size: 3.2rem;
	}
	.author_movie.bgwrap .name{
		font-size:2.4rem;
	}
	.index .inner > li::before{
		width:100%;
		left:0;
	}
	
}

@media screen and (max-width : 767px){

	.author_movie h2 {
		padding: 8% 0;
	    font-size: 1.8rem;
	    line-height: 1.5;
	    margin-bottom: 8%;
	}
	.author_movie.bgwrap h2{
		padding: 5% 0;
		font-size: 2rem;
	}
	.author_movie.bgwrap .ttl{
		font-size: 2rem;
	}
	.author_movie.bgwrap .name{
		font-size: 1.4rem;
	}
	.author_movie .moviebox .txt{
		font-size: 1.3rem;
	}

}


.headline{
	text-align: center;
	color: #fff;
	font-size:4.0rem;
	background:#1c1c1c;
	font-weight: bold;
	padding: 50px 0;
}
.index{
	color:#0266a8;
	font-size: 2.4rem;
	font-weight:bold;
	padding: 0 0 55px;
}
.index .inner{
	margin-top: 60px;
}
.index .inner > li{
	position: relative;
	padding: 0 0 60px;
}
.index .inner > li::before{
	content: '';
	position: absolute;
	bottom: 30px;
	left: -5%;
	width: 110%;
	height: 1px;
	background: #ccc;
}
.index .inner li img{
	float: left;
	width: 30%;
	max-width: 307px;
	height: auto;
}
.index .inner .ttl{
	font-size: 2.3rem;
	font-weight: bold;
	color: #0266a8;
	margin: 0;
}
.index .inner li p{
	font-size: 1.6rem;
	margin: 5px 0;
}
.index .inner li div{
	float: right;
	width: 61%;
}
.index .inner ul li{
	position: relative;
	padding: 0 0 0 1.2em;
}
.index .inner ul li::before{
	content: '〇';
	position: absolute;
	top: 0;
	left: 0;
}
.index .bonus > .ttl{
	text-align: center;
	font-weight: bold;
	font-size: 4.0rem;
	margin: 50px 0 0;
}
.index .bonus .bonusInner .img{
	float: left;
	width: 30%;
	text-align: center;
}
.index .bonus .bonusInner .img img{
	float: none;
	width: 100%;
	height: auto;
}
.index .bonus .bonusInner .img img+img{
	width: 55%;
	margin-top: 40px;
}
.index .bonus .bonusInner .letter{
	float: right;
	width: 61%;
}
.index .bonus .bonusInner .letter ul+p{
	font-size: 1.8rem;
	margin-top: 20px;
}
.index .bonus .bonusInner > li{
	padding: 0;
}
.index .bonus .bonusInner > li::before{
	content: none;
}
.index .txt {
	margin-top: 40px;
}
.index .notes{
	font-size: 1.2rem;
	color: #666;
}
.index .txt p+p{
	margin-top: 50px;
}
.index .txt .bold{
	font-weight:bold;
}
.index .imgbox{
	margin: 35px 0 0;
}
.index .imgbox > div{
	float: right;
	width: 455px;
	text-align: center;
	margin-top: -20px;
}
.index .imgbox > div img{
	width: 100%;
	height: auto;
}
.index .imgbox > div p{
	display: inline-block;
	font-size: 1.2rem;
	color: #666;
	margin: 0!important;
}
.index .imgbox > div p span{
	font-weight: bold;
	color: #000;
}
.index .imgbox p+p{
	margin-top: 25px;
}
.index .imgbox p:last-child{
	margin-top: 35px;
}
.index .ul{
	text-decoration: underline;
	font-weight: bold;
}
.index .red{
	font-weight: bold;
	color: #cc0000;
}

@media screen and (max-width: 1220px) {

	.index .inner > li::before{
		width:100%;
		left:0;
	}
	.index .inner li div{
		width: 65%;
	}
	.index .bonus > .ttl{
		margin: 30px 0 0;
	}
	
}
@media screen and (max-width : 767px){

	.headline{
		font-size: 2.0rem;
		line-height: 1.5;
		padding: 5% 0;
	}
	.index .inner li img{
		width: 100%;
		max-width: inherit;
	}
	.index .inner li div{
		width: 100%;
	}
	.index .inner{
		margin-top: 5%;
	}
	.index .inner .ttl{
		font-size: 1.8rem;
		margin: 10px 0 0;
	}
	.index .inner li p{
		font-size: 1.4rem;
	}
	.index .inner ul li{
		font-size: 1.6rem;
	}
	.index .txt p+p{
		margin-top: 5%;
	}
	.index .imgbox{
		margin-top: 5%;
	}
	.index .bonus .bonusInner .img{
		width: 100%;
		float: none;
	}
	.index .bonus > .ttl{
		font-size: 2.4rem;
		margin: 0;
	}
	.index .bonus .bonusInner .img img+img{
		margin-top: 5%;
	}
	.index .bonus .bonusInner .letter{
		float: none;
		width: 100%;
		margin: 5% 0 0;
	}
	.index .bonus .bonusInner .letter ul+p{
		font-size: 1.4rem;
	}
	.index .txt{
		margin-top: 5%;
	}
	.index .imgbox > div{
		float: none;
		width: 100%;
		margin: 0 0 5%;
	}
}

.voice{
	padding: 0 0 80px;
}
.voice p+p{
	margin-top: 0;
}
.voice .ttl{
	font-size: 3.0rem;
	font-weight: bold;
	color: #0266a8;
	text-align: center;
	margin-top: 25px;
}
.voice .name{
	text-align: center;
	font-size: 2.0rem;
}
.voice .txt{
	margin: 25px 0 0;
}
.voice .txt img{
	width: 30%;
	max-width: 326px;
	height: auto;
}
.voice .txt.left img{
	float: left;
}
.voice .txt.right img{
	float: right;
}
.voice .txt div{
	width: 67%;
	padding: 0.5em 0 0;
}
.voice .txt.left div{
	float: right;
}
.voice .txt.right div{
	float: left;
}
.voice .txt div p{
	font-size: 1.6rem;
}
.voice .txt div p+p{
	padding-top: 1.5em;
}
.voice .txt+.ttl{
	margin-top: 60px;
}
.optin{
	text-align: center;
	margin: 65px 0 0;
}
.optin p{
	text-align: center;
	font-size: 1.7rem;
}
.optin .red{
	font-weight: bold;
	font-size: 3.3rem;
	color: #fd0000;
	margin: 10px 0 20px;
}
.optin > img{
	width: 582px;
	height: auto;
}
.optin .btn{
	text-align: center;
}


@media screen and (max-width: 1220px) {
	
	.voice .ttl{
		font-size:2.8rem;
	}
	
}

@media screen and (max-width : 767px){
	
	.voice{
		padding: 0 0 10%;
	}
	.voice .ttl{
		font-size: 2.0rem;
		margin: 5% 0 0;
	}
	.voice .name{
		font-size: 1.6rem;
	}
	.voice .txt{
		margin: 5% 0 0;
	}
	.voice .txt img{
		width: 100%;
		max-width: inherit;
		float: none;
		margin: 0 0 5%;
	}
	.voice .txt.left div,
	.voice .txt.right div{
		width: 100%;
		float: none;
	}
	.voice .txt+.ttl{
		margin-top: 10%;
	}
	.optin{
		margin: 10% 0 0;
	}
	.optin p{
		font-size: 1.2rem;
	}
	.optin .red{
		font-size: 2.4rem;
		margin: 3% 0;
	}
	.intro.yogen .wrap+.wrap{
		margin-top: 10%;
	}
	.intro.yogen .midashi{
		font-size: 1.8rem;
		margin: 10% 0 0;
	}
	.intro.yogen .wrap+.wrap > p+p{
		margin-top: 1em;
	}
	.intro.yogen .wrap+.wrap .x2{
		margin-top: 2em;
	}
	.last_text .faq dt{
		font-size: 1.8rem;
	}
	.last_text .faq{
		margin: 5% 0;
	}
	.last_text .red.bold{
		font-size: 2.4rem;
		margin: 0 0 3%;
	}
}


.clear{
	clear:both;
}
/* ------------------------------
    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 */ 