@charset "utf-8";


/*----------------------------------------- base */

html,
body{
font-family:"ヒラギノ角ゴ ProN W3", "hiragino-kaku-gothic-pron", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
font-size:100%;
line-height:1.6em;
width:100%;
height:100%;
color:#333333;
-moz-background-size: 100% auto;
-webkit-text-size-adjust: 100%;
}

input,
textarea{
font-size:100%;
line-height:1.3;
}

img{
vertical-align:bottom;
max-width:100%;
}

/*----------------------------------------- common class */

/* clear fix */
.clearfix:after {
content: ""; 
display: block;
clear: both;
height: 0;
visibility: hidden;
}
.clearfix {min-height: 1px;}
* html .clearfix {
height: 1px;
/*¥*//*/
height: auto;
overflow: hidden;
/**/
}
.clear{clear:both;}

.centering{text-align:center;}
.half{width:50%;}
.alignRight{text-align:right;display:block;}
.hide{display:none;}
.note{font-size:70%;}
.red{color:#ff40b2;}
.marker{background-color:#ffff66; padding:1px 3px 0px 3px;}
.gray{ color:#aaaaaa;}

small{ font-size:75%;}

/*----------------------------------------- base edit */

/* color */
/*
	base-color
	text #5e5e5e or #000000
	pink #cd55bd
	murasaki #50417e rgba(80,65,126,1)
*/

a{text-decoration:none; color:#cd55bd; -webkit-tap-highlight-color:rgba(0,0,0,0.1) ;}
a:hover{text-decoration:underline; color:#ed32ca;}
a:active{text-decoration:none; color:#cd55bd;}

/* link */
strong a:hover{text-decoration:underline;}
a:hover img, a.btn:hover{
filter: alpha(opacity=77) ;
-moz-opacity:0.77 ;
opacity:0.77 ;
}
a, a img{
-webkit-transition: opacity 0.2s ease, color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
-moz-transition: opacity 0.2s ease, color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
transition: opacity 0.2s ease, color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

/* select */
::selection { background:rgba(0,0,0,0.2);}
::-moz-selection { background:rgba(0,0,0,0.2);}


/* mobile + pc change */

.modePC{ display:none;}
.modeMB{ display:inherit;}
	@media all and (min-width: 726px) {
	.modePC{ display:inherit;}
	.modeMB{ display:none;}
	}

/* font */

.font-mincho {
font-family: "shippori-antique", "しっぽりアンチック", "ＭＳ Ｐ明朝", MS PMincho, "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, serif; letter-spacing: 0.2em;
font-weight: 400;
}
/*
.font-mincho>strong {
font-weight: normal;
}
*/

/*----------------------------------------- Contents Main */

/* body + main contenar*/

 
.body{
color: #5e5e5e;
margin:0 auto;
z-index:2;
height:100%;
letter-spacing: 0.1em;
font-feature-settings : "palt";
}
.body.subpage{ padding: 30px 0 0 0;}

.main{ background-color: #ffffff;}
.mainInner{ max-width:960px; margin:0 auto;}
	@media all and (max-width: 726px) {
	.main{}
	.mainInner{ padding: 0 15px;}
	}

/* header */

.header{
position: fixed;
opacity:1;
z-index:3;
width:100%;
height:50px;
top: 0;
/*background-color: #ffffff;*/
}

.headerInner{margin:0 auto; width:100%; max-width:660px; text-align:center; }
.headerInner{}

.header .logo{float:left; position: absolute;}
.header .logo>a{ display:block; vertical-align:bottom; padding:4px 0px 0px 10px;}
.header .logo>a>img{ max-height:40px; width:auto;}

.header .logo>a>img{ opacity:0.9;}
.header .logo>a:hover>img{ opacity:1;}


/*nav*/
.nav{font-size:92%; display:table; float:right; width:240px; padding:6px 2px 0 6px ; margin: auto;}
.nav>ul{ float:right;}
.nav>ul>li{ display: table-cell; vertical-align: top; line-height:1.3; text-align:center; margin: 0 4px; padding:6px 12px;}
.nav>ul>li>a,
.nav>ul>li>span{ display: table-cell; vertical-align:top; color:#7f7060; text-align:center; opacity:1; padding:3px 0 3px 0.2em; letter-spacing: 0.2em;}
.nav>ul>li>a{ text-decoration:none; line-height:1.3; white-space: nowrap;}
.nav>ul>li>a:hover{ opacity:1; }

/*.nav>ul>li>a.selected{
color: #cd55bd;
border-bottom:solid 1px #cd55bd;
}*/
.nav>ul>li>a:hover,
.nav>ul>li>a:active{
color: #cd55bd;
border-bottom:solid 1px #cd55bd;
}

@media all and (max-width: 726px) {
	.nav .nav-03{display: none;}
}

.nav>ul>li>a .new:before{
content: "CHECK!";
color: #ffffff;
background: #ef93bb;
font-size: 9px;
position: absolute;
opacity: 0.7;
border-radius: 0 0 6px 6px;
padding: 0px 5px 0 8px;
top:0;
}
.nav>ul>li>a:hover .new,
.nav>ul>li>a:active .new{
opacity: 1;
}


body{
background:#fcf6eb url(../img/bg.png) no-repeat;
background-size: auto 100%;
background-position: bottom;
background-attachment: fixed;
}
/*@media all and (min-width: 726px) {
body{
background:#fcf6eb url(../img/bg.png) no-repeat;
background-size: auto 100%;
background-position: bottom;
background-attachment: fixed;
}
}*/

.bodyBG{
	position: absolute;
	top: -1px;
	left: -43px;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: url(../img/bg1.jpg) no-repeat;
	background-size: auto 100%;
	background-position: bottom;
	background-attachment: fixed;
}
@media all and (max-width: 726px) {
.bodyBG{
	background-size: 250% auto;
	background-attachment: scroll;
}
}
.bodyBG:after {
	content:"";
	display:block;
	color: transparent;
}
@media all and (max-width: 726px) {
.bodyBG{
	/*background:none;*/
}
}


@media all and (min-width: 726px) {
.eyecatch{
display: block;
vertical-align:middle;
position: relative;
z-index:1;
height:100%;
width:100%;
font-size:100%;
color:#f419a6;
}
.eyecatch>.middle{
position: absolute;
top: 0;
height: 100%;
width: 100%;
}
.eyecatch>.middle>.logo{
display: table;
height: 100%;
width: 100%;
margin: auto;
vertical-align: middle;
}
.eyecatch>.middle>.logo>a{
display: table-cell;
height: 100%;
vertical-align: middle;
}
.eyecatch>.middle>.logo>a:hover{
opacity: 1;
}
.eyecatch>.middle>.logo>a>img{
margin: auto;
opacity: 1;
}
/*@media all and (min-width: 480px) {
	.eyecatch>.middle>.logo>a>img{
	opacity: 1;
	}
}*/
.eyecatch>.bottom{
display: block;
position:absolute;
bottom:26px;
width:100%;
text-align:center;
vertical-align:middle;
}
.eyecatch .comment{
margin:0;
padding:8px 0 0 0;
font-size:90%;
line-height: 1.5;
}
.eyecatch>.bigarrow{
display: block;
position:absolute;
bottom:5px;
width:100%;
opacity:0.9;
}
}

@media all and (max-width: 725px) {
.eyecatch {
display: block;
-webkit-animation-duration: 1.4s;
-webkit-animation-delay: 1.0s;
position: relative;
z-index: 1;
top: 0px;
overflow: hidden;
}
.eyecatch>.bigarrow{
display: block;
position:absolute;
bottom:15px;
width:100%;
opacity:0.8;
text-align: center;
}
.eyecatch img {
width: 100%;
}


}


.eyecatch>.bigarrow:after{
content:"";
display: inline-block;
width: 22px;
height: 22px;
border-right: 1px solid #cd55bd;
border-bottom: 1px solid #cd55bd;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.eyecatch>.bigarrow:hover{
opacity:1;
}

.eyecatch a:hover img{
opacity:1;	
}

.box {
border: #d3d3d3 solid 1px;
padding: 30px 30px 20px 30px;
border-radius: 20px;
}
.box.color-box {
border: none;
background: #fcf6eb;
}


.box.center {
margin: 20px 0;
}

.box .text {
margin: 5px 0;
line-height: 1.5;
text-align: left;
}

.box img {
max-width: 100%;
}

.box dl dt {
}

a.btn {
padding: 9px 14px 9px 14px;
margin: 4px 0;
line-height: 1.4;
border-radius: 4px;
background: #99948d;
color: #ffffff;
text-decoration: none;
font-size: 15px;
display: inline-block;
text-align: center;
min-width: 6em;
white-space: nowrap;
font-weight: 400;
}
a.btn:hover{background: #d66b9f; opacity: 1;}

span.btn{
padding: 9px 14px 9px 14px;
margin: 4px 0;
line-height: 1.4;
border-radius: 2px;
color: #ffffff;
background: rgba(0,0,0,0.35);
text-decoration: none;
font-size: 110%;
display: inline-block;
text-align: center;
min-width: 6em;
white-space: nowrap;
}

a.btn.btn-c2{
background: #ef93bb;
}
a.btn.btn-c2:hover{background: #d66b9f; opacity: 1;}

a.btn.btn-c3{
background: #86bfe2;
}
a.btn.btn-c3:hover{background: #d66b9f; opacity: 1;}

.btn>small{
display: block;
font-size: 9px;
}

ul.popup-btns{
	list-style: none;
	margin: 0 auto;
	padding: 0 10px;
	max-width: 540px
}
ul.popup-btns li {
    display: inline-block;
    width: 24%;
	min-width: 120px;
    height: 48px;
    padding: 2px 0 6px 0;
    text-align: center;
	margin: 0;
	list-style: none;
}

ul.popup-btns a {
    display: table-cell;
    border: solid 1px #d6d6d6;
    border-radius: 4px;
    width: 24%;
    height: 48px;
    text-align: center;
    vertical-align: middle;
	padding: 2px 5px;
}
ul.popup-btns a img {
    vertical-align: middle;
    max-height: 38px;
    max-width: 100%;
    border-radius: 4px;
}


@media all and (min-width: 480px) {
}
.center{ text-align:center !important;}

.title {
font-size: 20px;
font-weight: normal;
margin: 50px auto 50px auto;
padding:25px 0 20px 0.5em ;
display: table;
line-height: 1.35;
letter-spacing: 0.5em;
color: #ef93bb;
white-space: nowrap;
position: relative;
/*background: url( ../img/icon_emblem.png) center no-repeat;*/
}

.title-sub {
font-size: 18px;
font-weight: normal;
color: #7f7060;
margin: 40px auto 20px auto;
display: table;
line-height: 1.3;
letter-spacing: 0.1em;
text-align: center;
white-space: nowrap;
}
.title-sub .pic{
	margin: 0 auto 10px auto;
	display: block;
	width: 60%;
	max-width: 220px;
	border-radius: 12px;
}
@media all and (max-width: 480px) {

	.title {
	/*font-size: 140%;*/
	}
	.title-sub {
	font-size: 105%;
	padding-left: 0.2em;
	}

}


.summary { font-size:85%; margin:0 0 50px 0; padding:50px 0 0 0; line-height:1.7; text-align:center;}
	@media all and (max-width: 725.9px) {
		.summary { font-size:80%;}
	}
.summary>h2{
color: #ef93bb;
font-size: 140%;
margin: 0 0 1em 0;
font-weight: 400;
}
.summary>p{
margin: 0 0 1em 0;
}
.summary>p>strong{
font-size: 125%;
margin: 0 3px;
line-height: 1;
}
.summary>p>img{
margin: 0.5em 0 0.5em 0;
width: 94%;
max-width: 370px;
}
.title + .summary{ margin:-70px 0 70px 0;}
.title-sub + .summary{ margin:-70px 0 50px 0;}
.title + .summary + .credit{ margin:-60px 0 60px 0;}
/*.title + .credit{ margin:-35px 0 35px 0;}*/

.note-list{
	font-size:70%;
	line-height:1.5;
	list-style-type:disc;
	list-style-position:inside;
	max-width:600px;
	margin:20px auto 0 auto;
	text-align:left;
}
.note-list>li{
	text-indent:-1em;
	padding:0.5em 0 0.5em 1em;
	}
.note-list>li img{ padding:5px 0;}
@media all and (min-width: 480px) {
	.note-list{
		text-align:center;
	}
}

.sectioninner {
max-width: 680px;
/*margin: 80px auto;*/
margin: auto;
}

/*book*/

.section-book {
margin: 50px auto 0 auto;
text-align: center;
width: 96%;
max-width: 540px;
}

.section-book.picside dl {
text-align: left;
}

.section-book .pic {
	margin: 15px 0px 15px 0px;
	display: inline-block;
}

.section-book.picside .pic {
float: left;
text-align: right;
padding:0 0 0 0;
}

.section-book .pic img {
vertical-align: bottom;
box-shadow: 0px 0.5px 6px rgba(0,0,0,0.3);
border-radius: 1px;
}

.section-book a.pic:hover {
background: none;
}

.section-book .name {
margin: 0 0 10px 0;
font-size: 125%;
line-height: 1.3;
color:#7f7060;
}

.section-book .name small {
font-size: 65%;
}
.sec-contact{
	margin-bottom: 0px;
	padding-bottom: 50px;
}

.text {
font-size: 90%;
margin: 12px 0 12px 0;
line-height: 1.8;
text-align: justify;
text-justify: inter-ideograp;
}

.section-book .text a>img {
margin: 2px;
}


.text-min {
font-size: 75%;
margin: 12px auto;
max-width: 540px;
line-height: 1.8;
text-align: justify;
text-justify: inter-ideograp;
}

.section-book .detail {
font-size: 70%;
line-height: 1.7;
text-align: left;
}

@media all and (min-width: 726px) {

	.section-book dd {
	/*min-height: 272px;*/
	}

	.section-book.picside .pic {
	/*width: 218px;*/
	/*height: 310px;*/
	margin: 10px 20px 10px 10px;
	}
}

@media all and (max-width: 725.9px) {
.section-book dl {
margin: 40px auto 40px auto;
}
.section-book.picside .pic {
width: 42%;
max-width: 218px;
min-height: 140px;
margin: 5px 20px 15px 0;
}

.section-book dd img {
max-width: 56%;
}

.section-book .text br {
display: none;
}

.section-book .name {
margin: 0 0 15px 0;
}
}


@media all and (max-width: 480px) {

.section-book{
}
.section-book .text {
clear: both;
text-align: center;
}
}

/*video*/
iframe,embed{
max-width:100%;
}
@media all and (max-width: 480px) {
	iframe[src*=youtube],embed{
	height: auto;
	min-height:200px;
	}
	.snsList iframe{
	min-height: auto;
	}
}
/*charactor list*/
.charactor{ display:inline-block; vertical-align: top;}
.charactor>.pic{ padding:0 0 10px 0;}
.charactor .name{ color:#cd55bd; line-height:1.2; font-size:20px; padding:0 0 0 0;}
.charactor .name rt{ font-size:8px;}
.charactor .text{ font-size:68%; line-height:1.4; padding:0 12px 20px 12px; max-width:170px;}
	@media all and (min-width: 726px) {
	.list-charactor{ margin:0 auto; max-width:600px;}
	}
	@media all and (max-width: 424px) {
	.list-charactor .text{ max-width: 280px;}
	}

/*info list*/
.list-info{
height:80%; 
overflow-y: /*scroll*/ auto; 
max-height: 460px; 
margin: auto; 
max-width: 540px;
border: #d3d3d3 solid 1px;
border-radius: 20px;
}
.list-info li{
margin:1.8em 0;
padding: 10px 20px;
text-align: left;
}
.list-info .name{
font-size: 20px;
line-height: 1.4;
margin: 0.2em 0 0.2em 0;
font-weight: 400;
display:block;
color: #7f7060;
}
.list-info .name a{
color: rgba(80,65,126,1);
text-decoration: none;
}
.list-info .name a:hover{
color: #cd55bd;
}
.list-info .date{
color: #fcf6eb;
font-size: 11px;
background: #99948d;
padding: 2px 0.2em 2px 0.4em;
}
.list-info .detail{
font-size: 90%;
}
.list-info .detail>p{
margin: 0;
}


/*interview*/
.text-interview-sub{ font-size:80%; text-align: justify; text-justify: inter-ideograp;line-height:1.9;}
.text-interview-sub>p{ margin:0 0 1em 0;}
.text-interview{ padding-left:5em; font-size:90%; margin:50px 0 50px 0; line-height:1.9; text-align: justify; text-justify: inter-ideograp;}
.text-interview>p{ margin:1.5em 0;}
.text-interview .interviewer{color:#ce1584;}
.text-interview .interviewer>span{ margin-left:-5em; display:inline-block; width:5em; letter-spacing:-0.1em;}
.text-interview .guest>span{ margin-left:-5em; display:inline-block; width:5em; color:#206a96; font-weight: bold;}
.text-interview .guest.matsui>span{ color:#5b5852;}

	@media all and (max-width: 480px) {
	.section.section-interview{margin:30px 0 0 0;}
	.text-interview{ padding-left:5em;}
	}
.title + .summary2{ margin:-20px 0 40px 0; font-size: 120%;}
.title + .summary2 + .credit{ margin:-20px 0 40px 0;}
.title + .credit{ margin:-65px 0 65px 0; }
.credit{ font-size:70%; line-height:1.4; margin:20px 0 20px 0;}
.credit>p{ margin:8px 0;}
/*----------------------------------------- Footer */

/*----------------------------------------- Footer */

#footer {
clear: both;
padding: 130px 0 15px 0;
position: relative;
width: 100%;
background: /*rgba(0,0,0,0.2)*/ #99948d;
}

#footerInner {
position: relative;
text-align: center;
max-width: 726px;
margin: 0 auto;
}

.snsList {
display: block;
text-align: center;
margin: 0 auto 25px auto;
padding: 0 0 10px 0;
line-height: 1;
font-size: 20%;
}

.snsList li {
display: inline-block;
padding: 0 2px 10px 2px;
vertical-align: top;
line-height: 1;
position: relative;
}

.snsList li img,
.snsList li a img {
vertical-align: baseline;
}

.list-sns-icon{
	font-size: 30px;
}
.list-sns-icon>li>a{
	color: rgba(255,255,255,0.8);
  text-decoration: none;
}
.list-sns-icon>li>a:hover{
	color:#ffffff;
}

.twitterShare iframe.twitter-share-button{
	width: 90px;
}
.facebookLike div,
.facebookLike span,
.facebookLike iframe{
	width: 184px;
}

i.icon.hatebu {
  line-height: 1;
  display: table-cell;
  vertical-align: middle;
  font-size: 60%;
  text-decoration: none;
  font-style: normal;
  color: #99948d;
  height: 1.48em;
  width: 1.51em;
  border-radius: 5px;
  position: relative;
  top: 0.15em;
  overflow: hidden;
  font-weight: bold;
  text-align: center;
  background-color: rgba(255,255,255,0.8);;
  background-size: 400%;
  background-position: right top; }

i.icon.hatebu:hover {
  background-color: #ffffff;
  text-decoration: none;}

#footer aside {
padding: 0 0 10px 0;
}


.footerLinkList {
clear: both;
font-size: 80%;
padding: 2px 0;
}

.footerLinkList ul.listOhtaLinks {
}

.footerLinkList ul.listOhtaLinks li {
display: inline;
padding: 10px 2px 10px 0.4em;
white-space: nowrap;
}

.footerLinkList ul.listOhtaLinks a {
text-decoration: none;
border: none;
padding: 4px 8px;
color: #dddddd;
}

.footerLinkList ul.listOhtaLinks a:hover {
color: #ffffff;
}

.footerLinkList ul.listOhtaLinks img {
width: auto;
vertical-align: middle;
padding: 0 0 2px 0;
max-height: 18px;
}

@media all and (min-width: 726px) {

.footerLinkList>ul.listOhtaLinks {
display: table;
width: 100%;
text-align: center;
}

.footerLinkList>ul.listOhtaLinks>li {
display: table-cell;
vertical-align: middle;
min-width: 6em;
line-height: 1.3;
}

.footerLinkList ul.listOhtaLinks a {
display: block;
padding: 6px 0;
}
}

.footerLinkList ul.listPerioLinks {
padding: 15px 0 5px 0;
}

.footerLinkList ul.listPerioLinks li {
display: inline-block;
padding: 0 6px;
white-space: nowrap;
	min-height: 50px;
}

.footerLinkList ul.listPerioLinks li>a>img {
opacity: 0.7;
}

.footerLinkList ul.listPerioLinks li>a:hover>img {
opacity: 1;
}

#copyright {
padding: 10px 0 20px 0;
font-size: 70%;
line-height: 1.4;
color: #999999;
}

.pagetopfade {
position: fixed;
bottom: 75px;
right: 15px;
float: right;
}

.pagetopfade a img{
text-decoration: none;
-moz-opacity: 0.5;
opacity: 0.5;
}

.pagetopfade a:hover img{
text-decoration: none;
-moz-opacity: 1;
opacity: 1;
}


@media all and (min-width: 480px) {
.pagetopfade {
bottom: 15px;
}
}

.animated.fadeIn{
-webkit-animation-duration: 1.0s;
animation-duration: 1.0s;
-webkit-animation-delay: 0.5s;
animation-delay: 0.5s;
}

@media all and (min-width: 480px) {
.twitter-timeline.twitter-timeline-rendered{
height: 500px !important;
}
}
