/*
Theme Name: habakiri-official
Theme URI: http://habakiri.2inc.org
Description: Habakiri 公式サイト用テーマ
Author: Takashi Kitajima
Author URI: http://2inc.org
Version: 1.0.0
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Template: habakiri
*/
body {
	font-family: "Roboto", "Droid Sans", "游ゴシック", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
	color: #333;
	line-height: 1.8;
}

p, ul, ol, dl, table {
	margin: 0 0 20px;
}

h2, .h2 {
	font-size: 26px;
	margin: 40px 0 20px;
}

h3, h3 {
	font-size: 22px;
}

.home .section {
	border: none;
}

.home-action {
	border-top: 1px solid #f5f5f5;
	border-bottom: 1px solid #f5f5f5;
	background-color: #fafafa;
}
.home-action .container {
	padding-top: 20px;
	padding-bottom: 40px;
}
.home-action .btn {
	margin-top: 20px;
}
.home-action .genericon {
	margin-top: 2px;
}

.home .whats-habakiri {
	border-top: 1px solid #f5f5f5;
	border-bottom: 1px solid #f5f5f5;
	background-color: #fafafa;
	padding-top: 70px;
	padding-bottom: 40px;
}
.whats-habakiri .whats-habakiri-item {
	font-size: 13px;
	padding: 0 0 20px;
}
.whats-habakiri-item-icon.genericon {
	font-size: 20px;
	vertical-align: middle;
}
.whats-habakiri-item-icon.genericon:before {
	top: -2px;
}
.whats-habakiri-item-icon-bootstrap:before {
	content: 'B';
	color: #563d7c;
	font-family: 'Helvetica Neue';
}

.lead {
	color: #FFF;
	font-size: 15px;
	font-weight: bold;
	text-align: center; 
	margin-bottom: 40px;
}

.page-header {
	border: none;
}

.page-template-full-width-fixed #sub {
	display: none;
}

.child-pages {
	border-top: 1px solid #eee;
}
.child-pages .hentry {
	border-bottom: 1px solid #eee;
	padding: 30px 0;
}

.add-on .add-on-item {
	margin-bottom: 30px;
}

.foot_rogo {
	color: #FFF;
	font-size: 15px;
	font-weight: bold;
}
.copyright {
    background-color: #0a0a0a;
    color: #dfdfdf;
    font-size: 12px;
    padding: 15px 0;
}

#news {
    position: relative;
    margin: 1em 0;
    padding: 0.5em 1em;
    border: solid 3px #72aae2;
    border-radius: 8px;
}
#news h2 {
    position: absolute;
    display: inline-block;
    top: -55px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 24px;
    background: #FFF;
    color: #72aae2;
    font-weight: bold;
}
#news div.title {
    border-bottom:dotted 1px #aaaaaa;
    margin: 0px;
    font-size:16px;
    line-height: 1.2;
}
#news div.day {
    font-size:14px;
    color:#888888;
    line-height: 1.6;
    margin: 10px 0 0;
}
#pra_right {
	font-size:90%;
	text-align: right;
	margin-bottom: 5px;
}
.section__title {
    color: #0080ff;
    padding: .75em 0;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-style: double;
}
.headlogo {
    max-width:130px;
}
.habakiri-slider__item-content h1,.habakiri-slider__item-content p,.habakiri-slider__item-content a {
    text-shadow:0px 0px 6px #000000;
}
.habakiri-slider__item-content .btn-default {
    font-weight: bold;
}
.sidebar .widget_archive ul, .sidebar .widget_categories ul, .sidebar .widget_meta ul, .sidebar .widget_nav_menu ul, .sidebar .widget_pages ul, .sidebar .widget_recent_comments ul, .sidebar .widget_recent_entries ul {
    border-top: 1px dotted #ddd;
    border-bottom: 1px dotted #ddd;
}
.sidebar .widget_archive ul li, .sidebar .widget_categories ul li, .sidebar .widget_meta ul li, .sidebar .widget_nav_menu ul li, .sidebar .widget_pages ul li, .sidebar .widget_recent_comments ul li, .sidebar .widget_recent_entries ul li {
    border-top: 1px dotted #ddd;
    margin: 0;
    padding-top: 5px;
    padding-bottom: 5px;
}
#tburl, .comments__form input[type=text], .comments__form input[type=email], .comments__form input[type=url], .comments__form textarea, .form-control, .search-form .search-field, .widget_search .search-field {
    display: block;
    width: 100%;
    height: 37px;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.7;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}
.sidebar-widget__title {
    font-size:110%;
    margin-bottom: 5px;
}
.sidebar-widget ul li {
    font-weight: bold;
}
.entry__title {
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
}
.entry__content h2 {
    font-size:150%;
    color: #0080ff;
}
#header {
    border-bottom: 3px solid #CC0000;
}
#mainbody {
	font-size: 107%;
	line-height: 1.7;
	color: #333333;
	border-top: 1px solid #999999;
	border-right: 1px solid #999999;
}
#mainbody th {
	color: #FFFFFF;
	background-color: #000000;
	border-bottom: 1px solid #999999;
	border-left: 1px solid #999999;
	padding: 2px;
}
#mainbody tr.bgC5E1ED {
	background-color: #c5e1ed;
}
#mainbody tr.bgF4F4F4 {
	background-color: #F4F4F4;
}
#mainbody  td  {
	border-bottom: 1px solid #999999;
	border-left: 1px solid #999999;
	padding: 2px;
}
#mainbody tr.bgF4F4F4 {
	background-color: #F4F4F4;
}


/* ---------------------------------------------------------------------
Q&A
--------------------------------------------------------------------- */
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa .cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 0 0.2em 0;
	color: #1b2538;
}
.cp_qa .cp_actab input {
	position: absolute;
	opacity: 0;
}
/* 質問 */
.cp_qa .cp_actab label {
	font-weight: bold;
	font-size: 1.0em;
	line-height: 1.4em;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1em 2.5em 1em 2.5em;
	cursor: pointer;
	text-indent: 1em;
	border-radius: 0.5em;
	background: rgba(160,255,160,0.1);
}
.cp_qa .cp_actab label::before {
	font-family: serif;
	font-size: 1.5em;
	margin-left: -2em;
	padding-right: 0.5em;
	content: 'Q';
}
.cp_qa .cp_actab label:hover {
	transition: all 0.3s;
	color: #0099FF;
}
/* --質問の＋アイコン */
.cp_qa .cp_actab label::after {
	font-size: 2.0em;
	font-weight: bold;
	line-height: 2em;
	position: absolute;
	top: 0;
	right: -10px;
	color: #BBB;
	content: '?';
	display: inline-block;
	width: 2em;
	height: 2em;
	-webkit-transition: transform 0.4s;
	        transition: transform 0.4s;
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
	position: relative;
	overflow: hidden;
	max-height: 0;
	padding: 0 0 0 2.5em;
	-webkit-transition: max-height 0.2s;
	        transition: max-height 0.2s;
	border-radius: 0 0 0.5em 0.5em;
}
.cp_qa .cp_actab .cp_actab-content::before {
	font-family: serif;
	font-size: 1.5em;
	position: absolute;
	margin: 0.4em 0 0 -1em;
	padding: 0;
	content: 'A';
	color: #ff6600;
}
.cp_qa .cp_actab .cp_actab-content p {
	margin: 1em 1em 1em 0;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
	max-height: 150em;
	border: 10px solid rgba(160,255,160,0.1);
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab input:checked ~ label {
	color: #0099FF;
	border-radius: 0.5em 0.5em 0 0;
}
/* 質問をクリックした時の+の動き */
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

.book_titt {
	font-size: 1.5em;
	font-weight: bold;
	border-bottom: 1px solid #999999;
}
.sm_red {
	font-size: 0.7em;
	color: #CC0000;
}
.book_img {
	border: 1px solid #999999;
}
.book_spec {
	font-size: 0.8em;
	border: 1px solid #999999;
	border-radius: 0.5em;
	background-color: #fcfced;
	padding: 10px;
}


@media screen and (max-width:990px){
.headlogo {
    max-width:90px;
}

}

@media only screen and (max-width:480px){
.table { margin: 0 -10px; }
.table th,
.table td{
    width: 100%;
    display: block;
    border-top: none;
    }
.table tr:first-child th { border-top: 1px solid #ddd; }
}