@charset "utf-8";
/* CSS Document */
/*-------------- icon-font(s) --------------*/

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  width: 1em;
  height: 1em;
  line-height: 1;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  vertical-align:middle;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}

/*-------------- icon-font(e) --------------*/
html {
	font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Tahoma, Arial, sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	font-size:87.5%;
	line-height:150%;
	}
body {
	background-color:#34332e;
	margin: 0;
	}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
	display: block;
	}
audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
	}
audio:not([controls]) {
	display: none;
	height: 0;
	}
/*-------------------------- common(s) -----------------------------*/
.clear { clear: both;}
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
    }
img { max-width:100%;}
a, a:link, a:visited {
	color:#50d0ff;
	text-decoration:none;
	}
.bold { font-weight:bold;}
ul{ margin:0; padding:0; }
ul li { list-style:none;}

.hidden {
	display:none;
	}
a:hover, button:hover { opacity:0.75;}

.center { text-align:center;}
.bold { font-weight:bold; }

p { margin-top: 0;}

.text_center { text-align:center; }
.text_right { text-align:right; }
.text_left { text-align:left; }

.text_yellow { color:#f7d24c; }
.text_blue { color:#50d0ff; }

.italic {
	transform: skewX(-10deg);
	}
.success_message {
  border:#ffffff solid 1px;
  width:88%;
  margin:2rem auto;
  padding-top:1rem;  
  padding-bottom:1rem;
  padding-left:5%;
  padding-right:5%;
  }
.success_message .message {
	font-size:1rem;
	line-height:2rem;
	text-align:center;
	margin:0.8rem 0;
	}
.text_s {
	font-size:0.8rem;
	line-height:1.2rem;
	}
img { max-height:100%;}
.marginTop_20 { margin-top:20px}
.d_inline_block {
  display:inline-block;
}
/*-------------------------- common(e) -----------------------------*/

.wrap{
	width:96%;
	margin:0 auto;
	}
#header {
	width:100%;
	background-color:#000000;
	height:60px;
	}
#header h1 {
	width:50%;
	float:left;
	margin:0;
	}
#header h1 a {
	display:block;
	color:#ffffff;
	font-size:0.9rem;
	line-height:60px;
	height:60px;
	}
#header nav {
	width:49%;
	float:right;
	}
#header nav ul li {
	float:right;
	}
#header nav ul li a {
	display:block;
	text-align:center;
	width:50px;
	height:54px;
	padding-top:6px;
	}
#header nav ul li a i {
	border:#50d0ff solid 2px;
	border-radius:100%;
	font-size:1.4rem;
	padding:0.4rem;
	}
#header nav ul li a .text_s {
	display:block;
  font-size:0.7rem;
	}
#footer {
	width:100%;
	background-color:#000000;
	padding:1rem 0 2rem;
	}
#footer #copyright {
	color:#ffffff;
	font-size:0.8rem;
	line-height:1.2rem;
	text-align:center;
	}
#footer ul {
	text-align:center;
	}
#footer ul li {
	display:inline-block;
	width:40%;
	margin-top:0.8rem;
	margin-bottom:1rem;
	margin-left:1%;
	margin-right:1%;
	}

	
.contentsBody {
  background: url(../images/base/bg.jpg) center top no-repeat;
  background-size:cover;
  padding-top:1rem;
}
#top {
	background:none;
	padding-top:0;
	}
.contentsBody .wrap{
	position:relative;
	}
.contentsBody h1 {
	color:#ffffff;
	border-bottom:#ffffff solid 2px;
	border-top:#ffffff solid 2px;
	font-size:0.9rem;
	line-height:2rem;
	font-weight:normal;
	letter-spacing:0.4rem;
	margin:0;
	}
#top h1 {
	border:none;
	background:transparent url(../images/index/img.png) right top no-repeat;
	background-size: cover;
	float:right;
	width:28%;
	height:200px;
	margin-top:0.8rem ;
  margin-bottom:0.8rem;
  margin-right:2%;
	padding:0;
	}

.contentsBody h2 {
	color:#ffffff;
	border-bottom:#ffffff solid 2px;
	border-top:#ffffff solid 2px;
	font-size:0.9rem;
	line-height:2rem;
	font-weight:normal;
	letter-spacing:0.4rem;
	margin:2rem 0;
	}
.contentsBody h3 { color:#ffffff;}
#top h2 {
	margin-top:0;
	margin-bottom:0.6rem;
	}
.movieArea{
	background-color:#000000;
	clear:both;
	text-align:center;
	width:96%;
	margin:0.2rem auto 1rem;
	}
.movieArea iframe {
	width:100%;
	height:190px;
	}
.contentsBody p {
	color:#ffffff;
	font-size:0.9rem;
	line-height:1.4rem;
	}
.description{
	margin:0 0 1rem;
	padding-top:0.8rem;
	}
.linkTo {
	display:block;
	font-size:0.8rem;
	line-height:1.8rem;
	text-align:right;
	margin-top:0.4rem;
	}
.linkTo i {
	border:#50d0ff solid 1px;
	border-radius:100%;
	font-size:0.9rem;
	margin-right:0.4rem;
	padding:0.1rem;
	}

 #sampleArea, #twArea, #contactContent {
	clear:both;
	width:96%;
   margin:0 auto 2rem;
	}
#top h2 {
	margin:0 auto 2rem;
  padding: 0 2%;
}
.prof_description {
	width:66%;
	float:left;
	margin-top:0;
  margin-left:2%;
	}
#top h2 { margin-bottom:1rem;}
#sampleArea { margin-bottom:2rem;}
#sampleArea ul { margin:0;}
#sampleArea ul li {
  display: flex;
  align-items: center;
	color:#ffffff;
	background-color: #000000;
	width: 100%;
	height: 3.4rem;
  position: relative;
	margin-bottom:0.2rem;
  padding-bottom: 1rem;
	}
#sampleArea ul li .voiceTitle {
	color:#ffffff;
	width: 80%;
	font-size: 0.8rem;
	line-height:1.1rem;
  position: relative;
	padding: 0 0 0 2.2rem;
	}
#sampleArea ul li .voiceTitle img {
  vertical-align:middle;
  position: absolute;
  left:0.4rem;
  top:0;
  bottom:0;
  margin:auto;
}
#sampleArea ul li .voiceSwf {
  width:3rem;
  height: 3rem;
  float: right;
  padding: 0.6rem;
}

#sampleArea ul li [id^="on"] {
  color: #FFFFFF;
  background-color: #4ED2FC;
  border: 1px solid #FFFFFF;
  text-align: center;
  line-height: 2.4rem;
  width: 2.4rem;
  height: 2.4rem;
  float: right;
  font-weight: bold;
  font-size:3rem;
  cursor: pointer;
  margin: 0.4rem;
}
#sampleArea ul li [id^="on"] p {
  border-top: 0.8rem solid transparent;
  border-bottom: 0.8rem solid transparent;
  border-left: 0.8rem solid #FFFFFF;
  margin: 0.4rem 0 0 0.9rem;
}

#sampleArea ul li [id^="off"] {
  display: none;
  color: #FFFFFF;
  background-color: #9A8C40;
  border: 1px solid #FFFFFF;
  width: 2.4rem;
  height: 2.4rem;
  text-align: center;
  line-height: 2.2rem;
  float: right;
  cursor: pointer;
  margin: 0.4rem;
}
#sampleArea ul li [id^="off"] p {
  font-weight: bold;
  font-size:1.8rem;
  line-height: 2.4rem;
  margin: 0 auto;
}
#sampleArea ul li .seekBar {
  position:absolute;
  left:0;
  bottom:0;
  font-size:0.6rem;
  line-height: 0.6rem;
  text-align: center;
  width: 100%;
  margin-bottom:0;
}
#sampleArea ul li .seekBar time {
  line-height: 1rem;
  vertical-align: top;
}
.seekBar input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  background-color: #ffffff;
  cursor: pointer;
  outline: none;
  width:78%;
  height:2px;
  margin:0 0.4rem;
}

.seekBar input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #4dd2fc; 
  width:8px; 
  height: 8px; 
  border-radius: 50%; 
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15); 
}

.seekBar input[type="range"]::-moz-range-thumb {
  background: #4dd2fc;
  width: 8px; 
  height: 8px;
  border-radius: 50%;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
  border: none; 
}
#twArea #tw {
  background-color: #50d0ff;
  width:90%;
  margin-top: 10px;
  margin-left:auto;
  margin-right:auto;
  padding-top:10px;
  padding-bottom:10px;
  padding-left:5%;
  padding-right:5%;
}
#profileContent, #audiobook, #contactContent {
  padding-bottom:2rem;
}
#top #contactContent {
  padding-bottom:0;
}
#profileContent ul {
	margin-bottom:3rem;
	}
#audiobook h1 {
	position:relative;
	line-height:2.4rem;
	}
#audiobook h1 .italic {
	display:block;
	font-size:0.8rem;
	line-height:1rem;
	letter-spacing:0;
	position:absolute;
	top:0.1rem;
	right:0.1rem;
	width:58%;
	}
#audiobook ul { margin:1rem 0;}
#audiobook ul li{
	width:33%;
	float:left;
	margin:0 0 1rem;
	}
#audiobook ul li .thumbBox, #audiobook ul li .textInfo {
	width:96%;
	text-align:center;
	margin:0 auto;
	}
#audiobook ul li .thumbBox img {
	height:110px;
	}
#audiobook ul li .textInfo p{
	font-size:0.8rem;
	}
#contactContent { min-height:320px;}
#contactContent h1 { margin-bottom:0.8rem;}
#contactContent .success_message p {
	width:auto;
	margin:1rem auto;
	}
#contactContent p { margin:0 auto 1rem;}
#contactTable {
	width:100%;
	margin:0.8rem auto 1rem;
	}
#contactTable th {
	background-color:#cccccc;
	text-align:left;
	width:40%;
	font-size:0.8rem;
	line-height:1.2rem;
	}
#contactTable td {
	background-color:#ffffff;
	}
#contactTable th, #contactTable td {
	padding:0.6rem;
	}
#contactTable input { width:80%;}
#contactTable textarea {
	width:90%;
	min-height:6rem;
	}
#errorStr {
  color:#ffff66;
  font-size:0.9rem;
  line-height: 1.4rem;
}
#frmBtn, #frmMail { text-align:center;}
	
@media (min-width: 768px) {
  #top h1 {
    width:20%;
  }
  .prof_description {
    width:72%;
  }
  #sampleArea ul {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
  }
  #sampleArea ul li {
    width:49%;
    height: 4rem;
    margin-bottom:0.6rem;
  }
  #sampleArea ul li:nth-child(odd) {
    margin-right:2%;
  }
  #sampleArea ul li [id^="on"] {
    font-size:2.8rem;
    line-height: 2.8rem;
    width: 2.8rem;
    height: 2.8rem;
  }
  #sampleArea ul li [id^="on"] p {
    border-top: 0.8rem solid transparent;
    border-bottom: 0.8rem solid transparent;
    border-left: 0.8rem solid #FFFFFF;
    margin: 0.6rem 0 0 1rem;
  }
  #sampleArea ul li [id^="off"] {
    font-size:1.6rem;
    line-height: 2.8rem;
    width: 2.8rem;
    height: 2.8rem;
  }
  #sampleArea ul li [id^="off"] p {
    font-size: 1.6rem;
    line-height: 3rem;
  }
  .movieArea iframe {
    width: 31%;
    height: 140px;
    margin: 0 0.5%;
  }
  #twArea #tw {
    width:70%;
    padding-left:10px;
    padding-right:10px;
  }
}
@media (min-width: 992px) {
	.wrap {
    width:960px;
  }
	#header { height:90px;}
	#header h1 { width:300px; }
	#header h1 a {
		font-size:1.2rem;
		line-height:90px;
		height:90px;
		}
	#header nav { width:640px; }
	#header nav ul li a {
		width:80px;
		height:72px;
		padding-top:14px;
		}
	#header nav ul li a i {	font-size:1.8rem; }
	#header nav ul li a .text_s {
		font-size:0.8rem;
		line-height:1.2rem;
		}
	#footer { padding:20px 0 40px;}
	#footer #copyright {
		font-size:0.9rem;
		line-height:1.2rem;
		}
	#footer ul li {
		width:auto;
		margin:1rem 0.6rem;
		}
	.contentsBody { padding-top:28px;}
	#top {
		background:none;
		min-height:810px;
		padding-top:0;
		}
	.contentsBody h1 {
		font-size:18px;
		line-height:42px;
		text-indent:8px;
		}
	#top h1 {
		background-color:#e5e5e5;
		width:387px;
		position:absolute;
		top:0;
		right:0;
		float:none;
		text-indent:0;
		height:98.5%;
		margin:0;
		}
	#top h1 img {
		display:none;
		}
	#top h2 {
		font-size:18px;
		line-height:42px;
		text-indent:8px;
		margin-bottom:10px;
		padding:0;
		}
	.contentsBody p {
		font-size:1rem;
		line-height:1.4rem;
		}
	.description{
		margin:0 0 1rem;
		padding-top:1rem;
		}
	.linkTo {
		font-size:12px;
		}
	.linkTo i {
		font-size:0.8rem;
		margin-right:0.4rem;
		padding:0.1rem;
		}
  .prof_description, #sampleArea {
		width:543px;
		margin-left:0;
		}
	.prof_description {
		font-size:0.9rem;
		line-height:1.4rem;
		float:none;
		margin:0 0 1rem;
		padding-top:1rem;
		}
  .description {
    font-size:0.9rem;
    line-height:1.4rem;
    margin:0 0 1rem;
    padding-top:1rem;
  }
  .seekBar input[type="range"] {
    width:72%;
  }
	.movieArea { 
    width:100%; 
    margin:0 0 30px;
  }
	.movieArea iframe {
		height:190px;
		}
	#sampleArea {
    margin-bottom:20px;
  }
  #twArea {
    width:100%;
  }
	#twArea #tw {
		margin-top: 20px;
		}
	#contactContent {
    width:100%;
    min-height:480px;
  }
	#audiobook h1 {
		line-height:42px;
		}
	#audiobook h1 .italic {
		display:inline-block;
		position:relative;
		font-size:14px;
		width:auto;
		}
	#audiobook ul li{
		width:16.5%;
		margin:0 0 2rem;
		}
	#audiobook ul li .thumbBox img {
		height:110px;
		}
	#contactContent h1 { margin-bottom:2rem;}

	#contactContent .success_message p {
		width:auto;
		margin:2rem auto;
		}
	#contactContent p {
    width: 96%;
    margin:0 auto 1rem;
  }
  #errorStr {
    width:96%;
    margin: 0.8rem auto;
  }
  #top #contactContent p {
    width:100%;
  }
	#contactTable {
		width: 96%;
		margin:0 auto 1rem;
		}
	#contactTable th, #contactTable td {
		padding:0.6rem;
		}
	#contactTable input { width:80%;}
	#contactTable textarea {
		width:90%;
		min-height:6rem;
		}
	
}

@media (max-width: 767px) {
  .visible_sm {
    display: block !important;
  }
  .hidden_sm{
    display: none !important;
  }

}

@media (min-width: 768px) and (max-width: 991px) {
  .visible_md {
    display: block !important;
  }
}

@media (min-width: 992px) {
  .visible_lg {
    display: block !important;
  }
  .hidden_lg{
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden_md{
    display: none !important;
  }
}