@charset "UTF-8";
/*===========================================================================*/
/*  common  */
/*===========================================================================*/
/* リセット
---------------------------------------------------------------------------- */
html ,body ,div ,span ,applet ,object ,iframe ,h1 ,h2 ,h3 ,h4 ,h5 ,h6 ,p ,blockquote ,pre ,a ,abbr ,acronym ,address ,big ,cite ,code ,del ,dfn ,em ,img ,ins ,kbd ,q ,s ,samp ,small ,strike ,strong ,sub ,sup ,tt ,var ,b ,u ,i ,center ,dl ,dt ,dd ,ol ,ul ,li ,fieldset ,form ,label ,legend ,table ,caption ,tbody ,tfoot ,thead ,tr ,th ,td ,article ,aside ,canvas ,details ,embed ,figure ,figcaption ,footer ,header ,hgroup ,menu ,nav ,output ,ruby ,section ,summary ,time ,mark ,audio ,video {
	margin:0;
	padding:0;
	border:0;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	font-size:100%;
	font:inherit;
	vertical-align:baseline;
}

article ,aside ,details ,figcaption ,figure ,footer ,header ,hgroup ,menu ,nav ,section {
	display:block;
}

ol ,ul {
	list-style:none;
}

blockquote ,q {
	quotes:none;
}

blockquote:before ,blockquote:after ,q:before ,q:after {
	content:'';
	content:none;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

img {
	max-width:100%;
	height:auto;
	line-height:0;
}

/* 基本スタイル
---------------------------------------------------------------------------- */
html {
	height:100%;
}

body {
	overflow-x: hidden;
	margin:0;
	padding:0;
	height:100%;
	line-height:1.6;
	color:#231815;
	font-family:"メイリオ",Meiryo,Osaka,"MS P Gothic","ＭＳ Ｐゴシック",Verdana,Chicago,sans-serif;
	font-size:0.9em;
}

body a:hover img {
	opacity:0.8;
	filter:alpha(opacity=80);
}

#contents {
	padding-top: 174px;
}
#inner-box{
	width:960px;
	margin:0 auto;
}

/* ハック
---------------------------------------------- */
/* letter-spacing hack */
@media screen {
  body {
		letter-spacing:0.5px;
  }

  br {
		letter-spacing:0;
  }
}
/* height100% hack */
body > #container {
	height:auto;
}

/* リンク
---------------------------------------------- */
a {
	color:#333333;
	overflow:hidden;
	outline:none;
}

a:hover {
	color:#333333;
	text-decoration:underline;
}

a img {
	-webkit-transition:all 0.3s linear;
	-moz-transition:all 0.3s linear;
	transition:all 0.3s linear;
}

/* アニメーション
---------------------------------------------- */
.anim {
	-webkit-transition:all 0.2s linear;
	-moz-transition:all 0.2s linear;
	transition:all 0.2s linear;
}

/* ボタンスタイル
---------------------------------------------- */
.btn-style{
	position: relative;
	z-index: 2;
	overflow: hidden;
	display: inline-block;
	background-color: transparent;
	border: 1px solid #231815;
	border-radius: 3px;
	color: #231815;
	text-align: center;
	text-decoration: none;
	outline: none;
}
.btn-style a:hover {
	color: #fff;
}
.btn-style::after {
	top: -100%;
	width: 100%;
	height: 100%;
}
.btn-style:hover::after {
	top: 0;
	background-color: #231815;
}
.btn-style::before,
.btn-style::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.btn-style,
.btn-style::before,
.btn-style::after {
	-webkit-transition: all .25s;
	transition: all .25s;
}

/* ヘッダー
---------------------------------------------------------------------------- */
header{
	position: fixed;
	width: 100%;
	top:0;
	left:0;
	background-color: #fff;
	z-index:9997;
}

header .h-top{
	margin-bottom: 15px;
	padding: 5px 0 0;
	-webkit-transition:all 0.15s linear;
	-moz-transition:all 0.15s linear;
	transition:all 0.15s linear;
	background-color: #231815;
	color: #fff;
	font-size:0.9em;
}

header .h-top .inner{
	overflow: hidden;
	width: 960px;
	margin: 0 auto;
	line-height: 1.5;
}

header .h-top .inner .h-read{
	float: left;
	width: 550px;
}

header .h-top .inner .h-top-nav{
	float: right;
	width: 400px;
	text-align: right;
}

header .h-top .inner .h-top-nav li{
	display: inline-block;
	*display: inline;
	margin-right: 10px;
	*zoom: 1;
}

header .h-top .inner .h-top-nav li a{
	display: block;
	color: #fff;
	text-decoration: none;
}

header .h-top .inner .h-top-nav li a i{
	margin-right: 3px;
}

header .h-top .inner .h-top-nav li a:hover{
	text-decoration: underline;
}

header .h-bottom{
	overflow: hidden;
	width: 960px;
	margin: 0 auto 10px;
	-webkit-transition:all 0.15s linear;
	-moz-transition:all 0.15s linear;
	transition:all 0.15s linear;
}

header .h-bottom .left-area{
	overflow: hidden;
	float: left;
	width: 340px;
	padding-top: 5px;
}

header .h-bottom .left-area .logo{
	float: left;
	width: 227px;
	margin-right: 13px;
}

header .h-bottom .left-area .home{
	display: inline-block;
	*display: inline;
	padding-top: 2px;
	*zoom: 1;
}

header .h-bottom .left-area .home a{
	display: block;
	padding: 0 10px;
	color: #d00414;
	border: 1px solid #d00414;
	text-decoration: none;
	font-size: 0.9em;
	text-align: center;
	line-height: 1.5;
}

header .h-bottom .left-area .home a:hover{
	text-decoration: underline;
}

header .h-bottom .left-area .home a i{
	margin-right: 5px;
	color: #d00414;
}

header .h-bottom .nav-area{
	float: right;
	width: 450px;
}

header .h-bottom .nav-area .subnav{
	text-align: right;
}

header .h-bottom .nav-area .subnav li{
	display: inline-block;
	*display: inline;
	margin-left: 10px;
	vertical-align: middle;
	letter-spacing: normal;
	font-size:0.9em;
	*zoom: 1;
}

header .h-bottom .nav-area .subnav li.company-logo{
	margin-left: 20px;
}

header .h-bottom .nav-area .subnav li a:hover{
	text-decoration: none;
}

header .h-bottom .nav-area .subnav li a i{
	margin-right: 5px;
}

header nav{
	border-bottom: 4px solid #d00414;
	background: #fff url("../common_img/header/bg_global.gif") 0 100% repeat-x;
}

header nav .inner{
	width: 960px;
	margin: 0 auto;
	letter-spacing: -0.4em;
}

header nav .inner li{
	display: inline-block;
	*display: inline;
	height: 76px;
	-webkit-transition:all 0.15s linear;
	-moz-transition:all 0.15s linear;
	transition:all 0.15s linear;
	letter-spacing: normal;
	vertical-align: bottom;
	*zoom: 1;
}

header nav .inner li a{
	display: block;
	height: 100%;
	background: transparent url("../common_img/header/global.png") 0 0 no-repeat;
	text-indent: -9999px;
}

header nav .inner li.g-home a{
	width: 94px;
	background-position: 0 0;
}

header nav .inner li.g-home a:hover{
	background-position: 0 -76px;
}

header nav .inner li.g-know a{
	width: 182px;
	background-position: -94px 0;
}

header nav .inner li.g-know a:hover{
	background-position: -94px -76px;
}

header nav .inner li.g-try a{
	width: 177px;
	background-position: -276px 0;
}

header nav .inner li.g-try a:hover{
	background-position: -276px -76px;
}

header nav .inner li.g-function a{
	width: 192px;
	background-position: -453px 0;
}

header nav .inner li.g-function a:hover{
	background-position: -453px -76px;
}

header nav .inner li.g-study a{
	width: 182px;
	background-position: -645px 0;
}

header nav .inner li.g-study a:hover{
	background-position: -645px -76px;
}

header nav .inner li.g-voice a{
	width: 133px;
	background-position: -827px 0;
}

header nav .inner li.g-voice a:hover{
	background-position: -827px -76px;
}

header nav .inner li.g-buseki a{
	width: 133px;
	background-position: -827px 0;
}

header nav .inner li.g-buseki a:hover{
	background-position: -827px -76px;
}


/* ヘッダー（高さを抑える）
---------------------------------------------------------------------------- */
header.on .h-bottom{
	margin-bottom: 0;
}

header.on .h-top{
	margin-bottom: 5px;
}

header.on nav .inner li{
	height: 37px;
}


/* 共通問合せエリア
---------------------------------------------------------------------------- */
.footer-contact{
	position: relative;
	width: 960px;
	margin: 0 auto 60px;
	padding: 20px 0;
	background: #fff url("../common_img/bg_contact.gif") 0 0 repeat;
}

.footer-contact dl dd strong{
	font-weight: bold;
	color: #d00414;
	font-size: 1.2em;
}

.footer-contact dl{
	margin-bottom: 10px;
	padding-left: 40px;
}

.footer-contact dl dt{
	color: #d00414;
	font-size: 1.3em;
}

.footer-contact dl dd{
	font-size: 2.1em;
	line-height: 1.4;
	letter-spacing: 0;
}

.footer-contact .button{
	padding-left: 40px;
}

.footer-contact .faq{
	padding-left: 40px;
}

.footer-contact .faq a{
	font-size: 1.2em;
}

.footer-contact .faq a:hover{
	text-decoration: none;
}

.footer-contact .faq a i{
	margin-right: 5px;
}

.footer-contact .fig{
	position: absolute;
	top:-30px;
	right: 20px;
}
/* パンくずエリア
---------------------------------------------------------------------------- */
#topicpath{
	width:960px;
	margin:0 auto;
	padding:20px 10px;
	text-align:right;
}
/* タイトル画像　メイン
---------------------------------------------------------------------------- */
#main{
	width:100%;
}
#main .bg-area{
	height:114px;
}
#main .bg-area p{
	padding-right:80px;
	text-align:center;
}
#main .bg-area p img{
	text-align:center;
	vertical-align: bottom;
}

#main .title-area{
	width:960px;
	margin:0 auto;
	padding-right:80px;
	position:relative;
}
#main .title-area h1{
	width:87px;
	margin:0 auto;
	position:absolute;
	top:60px;
	left:0px;
}

/* タイトル画像 お知らせ　FAQ　お問合せ
---------------------------------------------------------------------------- */
.main-title{
	background:#d00414;
	background-size:cover;
}
.main-title h1{
	width:1005px;
	margin:0 auto;
	padding-left:20px;
}
.main-title h1 img{
	text-align:center;
	vertical-align:bottom;
}


/* WP記事エリアの共通スタイル
---------------------------------------------------------------------------- */
.entry-format {
	zoom:1;
	margin:0 auto;
	word-wrap:break-word;
}

.entry-format:after {
	content:".";
	clear:both;
	height:0;
	display:block;
	visibility:hidden;
}

.entry-format p {
	margin:0 auto 25px;
}

.entry-format p em {
	font-style:italic;
	font-family:"MS P Gothic","ＭＳ Ｐゴシック";
}

.entry-format p b {
	font-weight:bold;
}

.entry-format p strong {
	font-weight:bold;
}

.entry-format .alignleft {
	float:left;
	margin:0 15px 10px 0;
}

.entry-format .alignright {
	float:right;
	margin:0 0 10px 15px;
}

.entry-format .aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}

.entry-format ul {
	list-style-type:disc;
	list-style-position: inside;
	margin:0 0 15px 20px;
}

.entry-format ol {
	list-style-type:decimal;
	list-style-position: inside;
	margin:0 0 15px 20px;
}

.entry-format blockquote {
	font-family:Georgia, "Bitstream Charter", serif;
	font-style:italic;
	font-weight:normal;
	margin:0 3em;
}

.entry-format h1 ,.entry-format h2 ,.entry-format h3 ,.entry-format h4 ,.entry-format h5 ,.entry-format h6 {
	margin:0 0 0.5em 0;
	padding:0;
	font-weight:bold;
}

.entry-format h1 {
	width:auto;
	font-size:2em;
}

.entry-format h2 {
	border:none;
	font-size:1.8em;
}

.entry-format h3 {
	font-size:1.6em;
}

.entry-format h4 {
	font-size:1.3em;
}

.entry-format h5 {
	font-size:0.9em;
}

.entry-format h6 {
	font-size:0.8em;
}
.entry-format address {
	font-style:italic;
}

.entry-format .gallery .gallery-item img {
	width:auto;
	max-width:100% !important;
	height:auto;
}

.entry-format table ,.entry-format th ,.entry-format td {
	border-style:solid;
	border-color:#c2c2c2;
}

.entry-format table {
	width:100%;
	margin:0 0 1.5em;
	border-width:1px 1px 0 0;
}

.entry-format th ,.entry-format td {
	padding:10px 15px;
	border-width:0 0 1px 1px;
	text-align:left;
	vertical-align:top;
}

.entry-format th {
	background:#f3f3f3;
	font-size:1em;
	font-weight:bold;
}

.entry-format td {
	font-size:1em;
}

.entry-format hr {
	zoom:1;
}

.entry-format hr:after {
	content:".";
	clear:both;
	height:0;
	display:block;
	visibility:hidden;
}

.entry-format .wp-caption {
	margin-bottom:15px;
	padding:5px 0 0;
	background-color:#f3f3f3;
	border:1px solid #dddddd;
	text-align:center;
}

.entry-format .wp-caption .wp-caption-text {
	margin-bottom:0;
	padding:5px 0;
	color:#333;
}

.entry-format .wp-video,
.entry-format video {
	max-width: 100%;
}


/* フッター
---------------------------------------------------------------------------- */
footer{
	width: 100%;
	background-color: #231815;
}

footer .f-top{
	overflow: hidden;
	width: 960px;
	margin: 0 auto;
	padding: 22px 0 20px;
}

footer .f-top .logo{
	float: left;
	width: 231px;
	padding-top: 20px;
}

footer .f-top .nav-area{
	overflow: hidden;
	float: right;
	width: 580px;
}

footer .f-top .nav-area ul{
	float: left;
	width: 190px;
}

footer .f-top .nav-area ul li{
	margin-bottom: 2px;
}

footer .f-top .nav-area ul li a{
	color: #fff;
	font-size: 0.9em;
	text-decoration: none;
}

footer .f-top .nav-area ul li a:hover{
	text-decoration: underline;
}

footer .f-top .nav-area ul li a i{
	margin-right: 11px;
	padding-left: 3px;
}

footer .f-top .nav-area ul li.f-home a i{
	margin-right: 7px;
	padding-left: 0;
}

footer .f-bottom {
	padding: 8px 0;
	border-top: 1px solid #716c6a;
}

footer .f-bottom .inner{
	overflow: hidden;
	width: 960px;
	margin: 0 auto;
}

footer .f-bottom .inner .copyright{
	float: left;
	width: 400px;
	padding-top: 10px;
	color: #fff;
}

footer .f-bottom .inner .company-logo{
	float: right;
	width: 157px;
}

/* プラン
---------------------------------------------------------------------------- */
.plan-list{
	width:960px;
	margin:0 auto;
}
.plan-list .fee{
	width:240px;
	float:left;
}
/* clear hack */
.plan-list{zoom:1;}
.plan-list:after{content:".";clear:both;height:0;display:block;visibility:hidden;}

.plan-list .fee img{
	vertical-align:bottom;
}
.plan-list .fee dl{
	padding:10px;
}
.plan-list .fee dt{
	font-size:1.1em;
	line-height:1.1em;
}
.plan-list .fee dd{
	font-size:1.1em;
	font-weight:bold;
	letter-spacing:-0.01em;
}
.plan-list .fee dd em{
	font-size:2em;
	color:#d00414;
}
.plan-list .fee .kaisya{
	width:210px;
	margin:0 auto;
	background:#fff;
}
.plan-list .fee .kaisya p{
	margin-bottom:10px;
	padding:30px 0;
	text-align:center;
}
.plan-list .fee .fee-box{
	padding:10px;
	text-align:center;
}
.plan-list .fee .bronze{
	background:#faf3f2;
}
.plan-list .fee .silver{
	background:#f2f2f2;
}
.plan-list .fee .gold{
	background:#ece7da;
}
.plan-list .fee .platinum{
	background:#f8f0d9;
}


/* notfound
---------------------------------------------------------------------------- */
#notfound{
	padding-top: 60px;
	background: #fff url("/common_img/bg_notfound.gif") 0 0 repeat;
}
#notfound .notfound-wrapper{
	width: 645px;
	height: 645px;
	margin: 0 auto;
	background: #fff;
	border-radius:50%;
	text-align: center;
}
#notfound .notfound-wrapper .logo{
	margin-bottom: 40px;
	padding-top: 130px;
}
#notfound .notfound-wrapper .txt{
	margin-bottom: 30px;
}
#notfound .notfound-wrapper .read{
	margin-bottom: 30px;
}
#notfound .notfound-wrapper .button a{
	padding: 5px 50px;
	background-color: #000;
	color: #fff;
	text-align: center;
	text-decoration: none;
}
#notfound .notfound-wrapper .button a:hover{
	text-decoration: underline;
}


/*===========================================================================*/
/*  tablet  */
/*===========================================================================*/
@media screen and (max-width: 960px) {
	body{
		overflow-x: auto;
	}
}