@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:#231815;
-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%;
}

[id^="twitter-widget-"]{ margin-left:auto; margin-right:auto; }

/*----------------------------------------- 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;}

.center{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 #231815 or #000000
	pink #8a3319
	murasaki #50417e rgba(80,65,126,1)
*/

a{text-decoration:none; color:#d461e0; -webkit-tap-highlight-color:rgba(0,0,0,0.1) ;}
a:hover{text-decoration:underline; color:#d85bbb;}
a:active{text-decoration:none; color:#d85bbb;}

/* link */
strong a:hover{text-decoration:underline;}
a.btn:hover{
filter: alpha(opacity=80) ;
-moz-opacity:0.80 ;
opacity:0.80 ;
}
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 */

body {
}
.title, .font-mincho/*, a.btn*/{
font-family: "a-otf-ryumin-pr6n", "ＭＳ Ｐ明朝", MS PMincho, "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, serif;
letter-spacing: 0.08em; font-weight: bold;
}
/*----------------------------------------- Contents Main */

/* body + main contenar*/

 
.body{
margin:0 auto;
z-index:2;
height:100%;
letter-spacing: 0.1em;
font-feature-settings : "palt";
}
.body.subpage{ padding: 30px 0 0 0;}

.main{}

.secInner{ /*max-width:960px; margin:0 auto;*/
max-width: 680px;
margin: 0 auto;
padding: 40px 0 40px 0;
}
	@media all and (max-width: 726px) {
	.main{}
	.secInner{ padding: 40px 15px;}
	}

/* header */

.header{
position: fixed;
opacity:0.96;
z-index:3;
width:100%;
height:50px;
top: 0;
}

.headerInner{margin:0 auto; width:100%; max-width:960px; text-align:center; }
.headerInner{}

.header .logo{float:left;}
.header .logo>a{ display:block; vertical-align:bottom; padding:12px 0px 0px 3px;}
.header .logo>a>img{ max-height:50px; width:auto;}

.header .logo>a>img{ opacity:0.9;}
.header .logo>a:hover>img{ opacity:1;}


/*nav*/
.nav{font-size:85%; display:table; float:right; width:240px; padding:0 4px 0 0 ; margin: auto;}
.nav>ul{ float:right;}
.nav>ul>li{ display: table-cell; vertical-align: top; line-height:1.3; text-align:center; padding:0px 2px;}
.nav>ul>li>a,
.nav>ul>li>span{ display: table-cell; vertical-align:top; color: #bc3cbc; text-align:center; opacity:1; padding:8px 10px 7px 11px; letter-spacing: 0.2em; background: rgba(255,255,255,0.75); border-radius: 0 0 5px 5px; border: solid 1px #bc3cbc; border-top: none; font-weight: normal;
}
.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:after{}
/*.nav>ul>li>a.selected{
background: #00b7de;
}*/
.nav>ul>li>a>small{
display: block;
font-size: 70%;
}
.nav>ul>li>a:hover,
.nav>ul>li>a:active{
background-color: rgba(255,255,255,1);
}
@media all and (max-width: 726px) {
.nav{font-size:80%;}
}

.bodyBG.animated{
  -webkit-animation-duration: 1.4s;
  -webkit-animation-delay: 1.0s;
 }
.bodyBG2.animated{
  -webkit-animation-duration: 2.4s;
  -webkit-animation-delay: 2.0s;
 }
.bodyBG3.animated{
  -webkit-animation-duration: 3.4s;
  -webkit-animation-delay: 3.0s;
 }
.eyecatch.animated{
  -webkit-animation-duration: 4.4s;
  -webkit-animation-delay: 6.0s;
 }

/*body{
top:0; left:0; width:100%; height:100%; z-index:-4;
background:url(../img/bg0.png) no-repeat;
background-size: cover;
background-position: top;
background-attachment: fixed;
}*/
body:after {
content:"";
display:block;
color: transparent;
position: fixed;
top:0; left:0; width:100%; height:100%; z-index:-4;
background:url(../img/bg0.png) no-repeat;
background-size: cover;
background-position: top;
}*

.bodyBG:after{
content:"";
display:block;
position: absolute;
top:0; left:0; width:100%; height:100%; z-index:-3;
background:url(../img/bg1.png) no-repeat;
background-size: cover;
background-position: top;
background-attachment: fixed;
}
@media all and (max-width: 725.9px) {
.bodyBG:after{
	background:none;
}
}

.bodyBG2:after{
content:"";
display:block;
position: absolute;
top:0; left:0; width:100%; height:100%; z-index:-2;
background:url(../img/bg2.png) no-repeat;
background-size: auto 100%;
background-position: top;
/*background-attachment: fixed;*/
}

.bodyBG3:after{
content:"";
display:block;
position: absolute;
top:0; left:0; width:100%; height:100%; z-index:-1;
background:url(../img/bg3.png) no-repeat;
background-size: auto 100%;
background-position: top;
}

@media all and (max-width: 725.9px) {

	.bodyBG:after{
	background: none;
	}
	.bodyBG2:after{
		background:none;
	}
	.bodyBG3:after{
		background:none;
	}
}


.eyecatch{
display: block;
vertical-align:middle;
position: relative;
z-index:1;
height:100%;
width:100%;
font-size:100%;
color:#8a3319;
overflow: hidden;
}
.eyecatch>.middle{
top: 0;
height: 100%;
width: 100%;
}
.eyecatch>.middle>.logo{
display: table;
height: 100%;
width: 100%;
margin: auto;
vertical-align: bottom;
}
.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;
/*max-height: 780px;*/
}
@media all and (max-width: 725.9px) {

	.eyecatch{
	background:url(../img/bg1.png) no-repeat;
	background-size: auto 100%;
	background-position: top;
	height: auto;
	}
}
@media all and (min-width: 726px) {
	.eyecatch{
	height:100%;
	}
	.eyecatch>.middle>.logo>a>img{
	opacity: 0;
	}
}

.eyecatch>.bottom{
display: block;
position:absolute;
bottom:26px;
width:100%;
text-align:center;
vertical-align:middle;
}

.eyecatch>.bigarrow{
display: block;
position:absolute;
bottom:10px;
width:100%;
opacity:0.9;
}
.eyecatch>.bigarrow:after{
content:"";
display: inline-block;
width: 20px;
height: 20px;
border-right: 2px solid #ffffff;
border-bottom: 2px solid #ffffff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.eyecatch>.bigarrow:hover{
opacity:1;
}
@media all and (min-width: 726px) {
	.eyecatch>.bigarrow{
	bottom:15px;
	}
	.eyecatch>.bigarrow:after{
	width: 30px;
	height: 30px;
	}
}

.box {
font-size: 80%;
margin: 5px 0 20px 0;
color: #666666;
}

.box.right {
float: right;
width: 46%;
max-width: 284px;
margin: 5px 0 20px 30px;
}

.box.right.box-min {
max-width: 170px;
}

@media all and (max-width: 480px) {

.box.right {
margin: 5px 0 15px 20px;
}

.box.right.box-min {
max-width: 120px;
}
}

.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 {
}

.list-btn { margin: 10px auto;}
.list-btn li{ display: inline-block;}

a.btn {
padding: 6px 12px 6px 12px;
margin: 4px auto;
line-height: 1.35;
border-radius: 4px;
background: #ffffff;
color: #bc3cbc;
border: solid 1px #bc3cbc;
text-decoration: none;
font-size: 16px;
display: table-cell;
text-align: center;
min-width: 7.6em;
height: 34px;
white-space: nowrap;
letter-spacing: 0.2em;
vertical-align: middle;
}
a.btn:hover{opacity: 0.9; color:#d461e0;}


a.btn.btn-c2{
color: #ffffff;
background: #d461e0;
border: solid 1px #d461e0;
}

.btn>small{
display: block;
font-size: 10px;
}
.btn>img{
max-width:120px;
max-height:34px;
vertical-align: middle;
}

@media all and (min-width: 480px) {
}
.center{ text-align:center !important;
}

.title {
font-size: 22px;
font-weight: bold;
margin: 40px auto 60px auto;
padding:14px 0 14px 0.5em ;
display: table;
line-height: 1.5;
letter-spacing: 0.5em;
color: #874a8b;
/*white-space: nowrap;*/
position: relative;
}

.title-sub {
font-size: 24px;
font-weight: normal;
color: #111111;
margin: 40px auto 20px auto;
display: table;
line-height: 1.3;
letter-spacing: 0.1em;
text-align: center;
white-space: nowrap;
}
.title-sub>small{
font-size: 60%;
letter-spacing: 0.3em;
}
@media all and (max-width: 480px) {

}

.infoBox{
color: #d71903;
font-size:90%; margin:2px 4px 4px 4px; padding:50px 0 0 0; line-height:1.5; text-align:center;
font-weight: bold;
letter-spacing: 0.05em;
}
.infoBoxInner{
border: solid 1px #fc8215;
padding: 10px 12px;
display: inline-block;
margin: 0 auto;
background: rgba(255,180,70,.25);
}
.iconInfo:before{
content: "";
display: inline-block;
background: url(../img/icon_info.png) no-repeat;
height: 30px;
width: 30px;
vertical-align: middle;
padding: 0 6px 0 0;
}

.summary { font-size:110%; margin-bottom: 60px; padding:50px 0 0 0; line-height:1.7; text-align:center; color:#874a8b;}
	@media all and (max-width: 725.9px) {
		.summary { font-size:100%;}
	}
.summary>p{
margin-bottom: 1em;
}
/*
.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;
	}
}

.text {
font-size: 95%;
margin: 10px 0 10px 0;
line-height: 1.8;
text-align: justify;
text-justify: inter-ideograp;
}

.text-min {
font-size: 80%;
margin: 10px auto;
max-width: 540px;
line-height: 1.8;
text-align: justify;
text-justify: inter-ideograp;
}


/*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;
	}
}

/*item list*/
.sec-item{
background: rgba(144,71,149,0.75);
color: #ffffff;
}
.sec-item .title{
color: #ffffff;
}
.list-item{}
.list-item > .item{ display:inline-block; vertical-align: top; max-width: 190px; text-align: left; padding: 15px 15px 0 15px;}
.list-item .pic{ margin: 0 auto 12px auto; border-radius: 50%; text-align: center;}
.list-item .pic>img{ margin: auto; max-height: 248px; box-shadow: 0 1px 6px rgba(0,0,0,0.33);}
.list-item .name{ line-height:1.2; font-size:18px; padding:2px 5px 0 5px; text-align: center;}
.list-item .text{ font-size:65%; line-height:1.7; padding:0 5px 20px 5px; display: block;}
.list-item .text a{ color: #ffffff;}
	@media all and (max-width: 725.9px) {
		.list-item > .item{max-width: 42%; padding: 15px 3% 0 3%;}
		.list-item .text{ font-size: 60%; padding:0 0 20px 0;}
	}
	
/*charactor list*/
.list-charactor > .charactor{ display:inline-block; vertical-align: top; max-width: 180px; padding: 15px 15px 0 15px;}
.charactor .pic{ margin: 0 auto 12px auto; border-radius: 50%; max-width: 155px; text-align: center;}
.charactor .pic>img{ margin: auto; text-align: center;}
.charactor .name{ line-height:1.2; font-size:18px; padding:2px 5px 0 5px; color: #874a8b; display: block;}
.charactor .text{ font-size:75%; line-height:1.4; padding:0 5px 20px 5px; text-align: center; display: block;}

	@media all and (max-width: 725.9px) {
		.list-charactor > .charactor{max-width: 42%; padding: 15px 3% 0 3%;}
		.list-charactor .text{ padding:0 0 20px 0;}
	}

.sec-profile .pic{ display: inline-block; margin: 0 auto 5px auto; background:#6e2319; border: solid 1px #6e2319; border-radius: 50%; overflow: hidden;}
.sec-profile .pic>img{ margin: auto; text-align: center;}

/*info list*/
.list-info>li{
margin:1.8em 0;
}
.list-info .name{
font-size: 20px;
line-height: 1.4;
margin: 0.2em 0 0.2em 0;
font-weight: normal;
display:block;
color: #bc3cbc;
}
.list-info .name a{
text-decoration: none;
color: #bc3cbc;
}
.list-info .name a:hover{
text-decoration: none;
color: #d85bbb;
}
.list-info .date{
color: #ffffff;
font-size: 12px;
background-color: rgba(144,71,149,.8);
padding: 0px 0.2em 0px 0.4em;
font-weight: normal;
}
.list-info .detail{
font-size: 85%;
}
.list-info .detail>p{
margin: 1em 0;
}


/*.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 {
clear: both;
padding: 60px 0 0 0;
position: relative;
width: 100%;
}

#footerInner {
position: relative;
text-align: center;
max-width: 726px;
margin: 0 auto;
}

.snsList {
display: block;
text-align: center;
margin: 0 auto 15px 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;
}

/* add tweet balloon*/
a.twitter-list-vertical {
display: block;
width: 66px;
background: #ffffff;
border: solid 1px #aaaaaa;
border-radius: 3px;
text-align: center;
font-size: 13px;
color: #333333;
padding: 9px 0 0 0;
margin: 0 0 8px 0;
height: 21px;
position: relative;
text-decoration: none;
}

a.twitter-list-vertical:before,
a.twitter-list-vertical:after {
content: "";
width: 0;
height: 0;
border: 5px solid transparent;
line-height: 0;
position: absolute;
left: 43%;
bottom: -10px;
}

a.twitter-list-vertical:before {
border-top: 5px solid #aaaaaa;
bottom: -10px;
}

a.twitter-list-vertical:after {
border-top: 5px solid #ffffff;
bottom: -9px;
}

@media all and (max-width: 480px) {

a.twitter-list-vertical {
width: 73px;
}
}

#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: 0 2px 0 0.4em;
white-space: nowrap;
}

.footerLinkList ul.listOhtaLinks a {
text-decoration: none;
border: none;
padding: 4px 8px;
/*color: #6d6460;*/
color: #874a8b;
}

.footerLinkList ul.listOhtaLinks a:hover {
color: #333333;
}

.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;
padding: 4px 6px;
white-space: nowrap;
}

.footerLinkList ul.listPerioLinks li>a>img {
opacity: 0.80;
}

.footerLinkList ul.listPerioLinks li>a:hover>img {
opacity: 1;
}

#copyright {
padding: 10px 0 20px 0;
font-size: 70%;
line-height: 1.4;
}

.pagetopfade {
position: fixed;
bottom: 75px;
right: 15px;
float: right;
}

.pagetopfade a img{
text-decoration: none;
-moz-opacity: 0.8;
opacity: 0.8;
}

.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;
}
}
