/*
Theme Name: habakiri-child
Theme URI: http://2inc.org ( テーマのURL )
Description: Habakiri の子テーマです ( テーマの説明 )
Author: Takashi Kitajima ( 作者名 )
Author URI: http://2inc.org ( 作者のURL )
Version: 1.0.0
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Template: habakiri
*/

/*明朝体にしたい場合このクラスを追加*/
.mincho {
	font-family: "Roboto", "Droid Sans", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    line-height: 1.8;
}

/*レスポンシブ時の調節用の改行*/
.responsive_br {
    display: none;
}

/*非表示項目*/
.none {
	display: none;
}

@media screen and (max-width: 767px) {
	.responsive_br {
    	display: unset;
	}
}

/*ヘッダー*/
.header .container {
    margin: 0;
    padding: 0;
    width: 100%;
}

.header .header_button {
	background: #8c8e90;
    text-align: center;
	color: white;
}

.header .header_button .arrow {
    position: relative;
    top: -1px;
}

.header .header_button a {
	color: white;
	display: block;
	padding-top: 10px;
	padding-bottom: 10px;
}

.header .site-branding {
	margin-left: 10%;
	padding: 0;
	padding-bottom: 20px;
}

.header .site-branding .logo {
	text-align: center;
	vertical-align: middle;
}

.header .site-branding .title {
    font-weight: normal;
	padding-left: 0;
}

.header .title .mincho {
	position: relative;
    top: 3px;
}

.header .global-nav {
    padding-top: 10px;
    padding-bottom: 10px;
}

.header .global-nav .menu {
	margin-left: 5%;
    margin-right: 5%;
}

.header .responsive-nav .menu-item {
    width: 16.5%;
    border-left: solid 1px white;
}

.header .responsive-nav .menu-item:last-child {
    border-right: solid 1px white;
}

.off-canvas-nav--dark {
	background-color: #3aa1cd;
	border-top: 1px solid #3fb0e0;
    border-bottom: 1px solid #3592ba;
}

.off-canvas-nav--dark li {
	border-top: 1px solid #3fb0e0;
    border-bottom: 1px solid #3592ba;
}

.off-canvas-nav--dark a {
	color: #fff;
}

.off-canvas-nav--dark .current-menu-item > a {
	background-color: #256783;
}

.off-canvas-nav--dark > * > ul {
	border-bottom: 1px solid #3fb0e0;
}

/*タブレット*/
@media screen and (min-width: 768px) and (max-width: 991px) {
	.header .site-branding {
		margin-left: 5%;
	}
}

/*スマホ*/
@media screen and (max-width: 767px) {
	.header .site-branding {
		margin-left: 5%;
	}

	.header .logo {
		padding-left: 0px;
		position: relative;
    	top: 10px;
	}

	.header .title {
		font-size: 17px;
	}

	.header .title .mincho {
		line-height: 1.5;
	}

	.header .header_button a {
		padding-top: 5px;
		padding-bottom: 5px;
	}
}

/*トップページ*/
#top_page .sub-page-contents {
	padding-top: 0;
}

#top_page .metaslider {
	margin-bottom: 50px;
}

#top_page .habakiri-slider section img {
	width: 100%;
	height: auto;
}

#top_page div[class^="banner_list"] {
    padding-left: unset;
    padding-right: unset;
}

#top_page .banner_list1 {
	margin-bottom: 20px;
}

#top_page .banner_list2 {
	margin-bottom: 80px;
}

#top_page .banner_list1 .banner1,#top_page .banner_list1 .banner2 {
    position: relative;
}

#top_page .banner_list2 .banner3,#top_page .banner_list2 .banner4 {
    position: relative;
}

#top_page div[class^="banner_list"] .banner_title {
    position: absolute;
    left: 30px;
    top: 110px;
    font-size: 25px;
	color: white;
}

@media screen and (max-width: 1199px) {
	#top_page div[class^="banner_list"] .banner_title {
		top: 95px;
	}
}

@media screen and (max-width: 991px) {
	#top_page div[class^="banner_list"] .banner_title {
		top: 125px;
	}
}

@media screen and (max-width: 599px) {
	#top_page div[class^="banner_list"] .banner_title {
		font-size: 20px;
	}
}

@media screen and (max-width: 479px) {
	#top_page div[class^="banner_list"] .banner_title {
		top: 35%;
	}

}


/*トップページに表示するトピックス*/
#top_page .news {
	margin-bottom: 50px;
}

#top_page .news .news_img {
    border-right: dashed 1px;
	text-align: center;
}

#top_page .news .posts {
	font-size: 15px;
}

#top_page .news .posts .date{
	display: inline;
	color: #8c8c8c;
}

#top_page .news .posts .posts_title{
	display: inline;
	margin-left: 20px;
}

#top_page .news .posts .posts_title a{
	color: #444444;
	text-decoration: underline;
}

#top_page .news .topics_link {
	text-align: right;
}

#top_page .news .topics_link a {
	color: #444444;
	text-decoration: underline;
}

/*タブレット*/
@media screen and (min-width: 768px) and (max-width: 991px) {
	#top_page div[class^="banner_list"] {
	    padding-left: 15%;
	    padding-right: 15%;
	}
}

/*スマホ*/
@media screen and (max-width: 767px) {
	#top_page .news .news_img {
	    border-right: unset;
    	margin-bottom: 25px;
	}

	#top_page .news .posts{
		margin-bottom: 10px;
	}

	#top_page .news .posts .date{
		display: block;
	}

	#top_page .news .posts .posts_title{
		display: block;
	}
}

/*フッター*/
.footer {
    background-color: #ffffff !important;
	text-align: center;
}

.footer .logo {
	width: 160px;
    height: 80px;
    border-radius: 100px 100px 0 0;
    background-color: #3aa1cd;
	display: inline-block;
}

.footer .logo img {
	margin-top: 20px;
}

.footer .copyright {
    background-color: #3aa1cd;
    color: #ffffff;
}

.footer .copyright .address .txt1 {
    font-size: 25px;
}

.footer .copyright .address .txt2 {
    font-size: 18px;
}

.footer_menu {
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: #868686;
}

.footer_menu ul {
    list-style-type: none;
    display: table;
    table-layout: fixed;
    width: 100%;
	margin-bottom: 0;
	padding-left: 15%;
    padding-right: 15%;
}

.footer_menu li {
	display:table-cell; 
	color: white;
	border-left: solid 1px white;
	vertical-align: middle;
}

.footer_menu li:last-child {
	border-right: solid 1px white;
}

.footer_menu a{
	color: white;
}

.footer_menu a:hover{
	color: white;
}

.footer_menu_mobile {
	display: none;
}

@media screen and (max-width: 991px) {
	.footer .copyright {
		padding-bottom: 60px;
	}

	.footer_menu {
		display: none;
	}

	.footer_menu_mobile {
		display: unset;
		position: fixed;
	    bottom: 0;
	    left: 0;
	    background-color: #3aa1cd;
		z-index: 10;
	}

	.footer_menu_mobile ul {
		margin: unset;
		padding: unset;
		display: table;
		table-layout: fixed;
	    width: 100%;
		font-size: 10px;
		text-align: center;
		height: 60px;
	}

	.footer_menu_mobile li {
		display: none;
	    border-right: solid white 1px;
		border-top: solid white 1px;
	    padding: unset;
		word-break: break-all;
	}

	.footer_menu_mobile li:last-child {
		border-right: none;
	}

	.footer_menu_mobile li img {
	    width: 25px;
	    margin-top: 15px;
	}

	.footer_menu_mobile li a {
		color: white;
	}
}

/*他ページ*/
#subpage .sub-page-contents {
	padding-top: 0;
}

#subpage .entry__content {
	margin-top: 20px;
}

/*他ページページヘッダー*/
#subpage .sub-page-contents .page_header {
	width: 100%;
	position: relative;
}

#subpage .sub-page-contents .page_header_img {
	width: 100%;
}

#subpage .sub-page-contents .page_header .page_title {
    font-size: 50px;
    font-weight: bold;
    position: absolute;
    top: 30%;
    left: 5%;
}

/*ページタイトル調節*/
@media screen and (min-width: 480px) and (max-width: 767px) {
	#subpage .sub-page-contents .page_header .page_title {
    	font-size: 30px;
	}
}

@media screen and (max-width: 479px) {
	#subpage .sub-page-contents .page_header .page_title {
    	font-size: 30px;
		top: 10%;
		left: 5%;
	}
}

/*見出し*/
#subpage .entry__content h2 {
    border-bottom: #3aa1cd solid 3px;
    font-family: "Roboto", "Droid Sans", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    line-height: 1.8;
	text-align: left;
	margin-top: 80px;
}

#subpage .entry__content h2:first-child {
	margin-top: 20px;
}

#subpage .entry__content h3 {
	border-bottom: #3aa1cd solid 1px;
    border-left: solid 7px #3aa1cd;
    font-family: "Roboto", "Droid Sans", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    line-height: 1.8;
	text-align: left;
	padding-left: 10px;
	margin-top: 50px;
}

#subpage .entry__content h4 {
    font-size: 18px;
    font-family: "Roboto", "Droid Sans", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    line-height: 1.8;
    margin-left: 20px;
}

/*ページ内リンク(ヘッダーで隠れるのを防止)*/
#subpage .page_link_table {
	text-align: center;
    margin-bottom: 40px;
	position: relative;
	z-index: 2;
	margin-left: 35px;
}

#subpage .page_link_table br {
	display: none;
}

#subpage .page_link_table .page_link {
    color: white;
    background-color: #3aa1cd;
    border-radius: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
}

#subpage .page_link_table .page_link .arrow {
	position: relative;
    top: -1px;
    margin-right: 5px;
}

#subpage #edu_caption1 {
	position: relative;
    padding-top: 175px;
    margin-top: -175px !important;
    z-index: 1;
	pointer-events: none;
}

#subpage #edu_caption2 {
	position: relative;
    padding-top: 255px;
    margin-top: -255px !important;
    z-index: 1;
	pointer-events: none;
}

#subpage #edu_caption3 {
	position: relative;
    padding-top: 260px;
    margin-top: -260px !important;
    z-index: 1;
	pointer-events: none;
}


/*スマホ*/
@media screen and (max-width: 767px) {
	#subpage .page_link_table {
		margin-left: unset;
	}

	#subpage .page_link_table .page_link {
	    margin-bottom: 10px;
		text-align: left;
	}

	#subpage #edu_caption1 {
		position: relative;
	    padding-top: 0px;
	    margin-top: 60px !important;
	    z-index: 1;
	}

	#subpage #edu_caption2 {
		position: relative;
	    padding-top: 140px;
	    margin-top: -140px !important;
	    z-index: 1;
	}

	#subpage #edu_caption3 {
		position: relative;
	    padding-top: 135px;
	    margin-top: -135px !important;
	    z-index: 1;
	}

}

/*サブページテーブル*/
#subpage .entry__content .tablepress td {
	border: solid 1px #c7c5c5;
}

#subpage .entry__content .tablepress .column-1 {
    font-weight: bold;
	text-align: center;
	vertical-align: middle;
	width: 20%;
}

#subpage .entry__content .tablepress .column-2 {
	width: 80%;
}

@media screen and (max-width: 767px) {
	#subpage .entry__content .tablepress {
		width: 100%;
	}

	#subpage .entry__content .tablepress .column-1,#subpage .entry__content .tablepress .column-2 {
		width: 100%;
		display: block;
	}

}

/*講演者テーブル*/
#subpage .entry__content .speaker .tablepress .column-1 {
	width: 10%;
}

#subpage .entry__content .speaker .tablepress .column-2 {
	width: 30%;
}

#subpage .entry__content .speaker .tablepress .column-3 {
	width: 50%;
}

@media screen and (max-width: 767px) {
	#subpage .entry__content .speaker .tablepress {
		width: 100%;
	}

	#subpage .entry__content .speaker .tablepress .column-1 {
		width: 100%;
		display: block;
	}

	#subpage .entry__content .speaker .tablepress .column-2,#subpage .entry__content .speaker .tablepress .column-3 {
		width: 50%;
		display: inline-block;
	}

}


/*ダウンロード*/
#download li {
	margin-bottom: 15px;
}
#download a {
	background-color: #337ab7;
    color: white;
    padding: 5px 15px;
    border-radius: 5px;
    font-size: 18px;
    word-break: break-all;
}
.download-accordion {
	display: none;
	padding: 0 2rem 2rem;
	margin-left: 20px;
	border-left: 1px solid #337ab7;
	border-right: 1px solid #337ab7;
	border-bottom: 1px solid #337ab7;
}
.download-accordion.active {
	display: block;
}
.download-accordion h4{
	margin-top: 0 !important;
	padding-top: 11.5px;
}
.accordion-open {
	background-color: #fff;
	border: 1px solid #337ab7;
	color: #337ab7 !important;
	margin-top: 11.5px;
	margin-bottom: 0 !important;
	padding: 5px 15px;
	position: relative;
}
.accordion-open::before {
	/* 閉じている時 */
	content: "＋";
	color: #337ab7;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
}
.accordion-open.active {
	background-color: #337ab7;
	border: 1px solid #337ab7;
	color: #fff !important;
}
.accordion-open.active::before {
	/* 開いている時 */
	content: "－";
	color: #fff;
}
@media screen and (max-width: 767px) {
	#download a {
		display: block;
		padding: 5px 10px;
		font-size: 14px;
	}
}


/*トピックス一覧*/
#subpage .posts {
	font-size: 18px;
	display: flex;
}

#subpage .posts .date{
	display: inline;
	color: #8c8c8c;
	flex: 1;
}

#subpage .posts .posts_title{
	display: inline;
	margin-left: 20px;
	flex: 5;
}

#subpage .posts .posts_title a{
	color: #444444;
	text-decoration: underline;
}

#subpage .pagenation {
	margin-top: 50px;
}

#subpage .pagenation ul {
	display: table;
	list-style-type: none;
	table-layout: auto;
	width: 100%;
	font-size: 18px;
    padding-left: 20%;
    padding-right: 20%;
    text-align: center;
}

#subpage .pagenation li {
	display: table-cell;
}

@media screen and (max-width: 767px) {
	#subpage .posts {
		margin-bottom: 10px;
		display: unset !important;
	}

	#subpage .posts .date{
		display: block;
	}

	#subpage .posts .posts_title{
		display: block;
	}

	#subpage .pagenation ul {
	    padding-left: 10%;
	    padding-right: 10%;
	}
}


/*お問い合わせ*/
#subpage .contact h2 {
	margin-top: 0;
}

#subpage .contact h4 {
	font-size: 35px;
}

#subpage .contact p {
	font-size: 25px;
}

#subpage .contact .phone_number {
	color: #333333;
	pointer-events: none;
}

#subpage .contact .form table {
	margin: 0 auto;
}

#subpage .contact .form table tr {
	height: 65px;
}

#subpage .contact .form table .item {
	text-align: right;
}

#subpage .contact .form table .input {
	text-align: left;
	padding-left: 30px;
}

#subpage .contact .form table .item_comment {
	vertical-align: top;
}

#subpage .contact .form table .required {
	color: red;
}

#subpage .contact .form .button_sub {
	text-align: center;
}

#subpage .contact .form .button_sub input {
	display       : inline-block;
	border-radius : 10px;
	text-align    : center;
	cursor        : pointer;
	padding       : 12px 12px;
	background    : #3aa1cd;
	color         : #ffffff;
	line-height   : 1em;
	width: 170px;
}

@media screen and (max-width: 767px) {
	#subpage .contact p {
		font-size: 20px;
	}

	#subpage .contact .phone_number {
		pointer-events: unset;
	}

	#subpage .form table {
		width: 100%;
	}

	#subpage .form table th,#subpage .form table td {
		width: 100%;
		display: block;
	}

	#subpage .contact .form table .item {
		text-align: unset;
	    padding: 10px;
	    background-color: #3aa1cd;
	    color: white;
		width: 100%;
	}

	#subpage .contact .form table .input {
		text-align: unset;
		padding: 10px 0;
	}

	#subpage .contact .form table .input input {
		width: 100%;
	}

	#subpage .contact .form table .input .phone_number {
		width: 25%;
	}

	#subpage .contact .form table .input .comment {
		width: 100%;
	}
}

/*投稿*/
#postpage .entry__title {
	border-bottom: #3aa1cd solid 1px;
    border-left: solid 7px #3aa1cd;
    font-family: "Roboto", "Droid Sans", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    line-height: 1.8;
	text-align: left;
	padding-left: 10px;
}

#postpage .post_date {
    font-size: 12px;
    margin-bottom: 30px;
    padding-bottom: 10px;
	text-align: right;
}

/*弘済会だよりページ*/
#newsletter .content {
	text-align: center;
}

#newsletter .content a {
	color: #444444;
	text-decoration: none;
}

#newsletter .thumb {
	width: 100%;
    height: 300px;
    object-fit: contain;
}

