@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');
/*------------------------------------------------------------------------------
** 0. reset　　** 1. define　　** 2. common　　** 3. header　　** 4. footer
------------------------------------------------------------------------------*/
/* ---------------------- reset ---------------------- */
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video {
  margin:0;padding:0;border:0;outline:0;font-size:100%;
  vertical-align:baseline;
  background:transparent}
nav ul,li {list-style:none}
a {margin:0;padding:0;font-size:100%;
  vertical-align:baseline;
  background:transparent;
  text-decoration: none}
table {border-collapse:collapse;border-spacing:0}
hr {
  display:block;
  height:1px;
  border:0;   
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;}
input, select {vertical-align:middle}
* , *::before , *::after {box-sizing: border-box}
img {width: 100%;height: auto}
button {
	background: none;
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;}
.object_fit_img,
.fit_img{font-family: 'object-fit: cover;'}
/* ACF管理画面用　 */
.acf-fc-layout-handle{font-size: 18px;font-weight: 700}
/*----------------------　1. define　----------------------*/
html{scroll-behavior: smooth}
body {
    color: #232323;
	font-size: 16px;
	font-family: 'Montserrat', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノUD角ゴ W3 JIS2004", "Hiragino UD Sans W3 JIS2004", "メイリオ", Meiryo, sans-serif;
	letter-spacing: 0.05em;
	line-height: 1.6;
    overflow-x: hidden;
	position: relative;
    width: 100%;
    -webkit-font-smoothing: antialiased;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	min-height: 100vh;
	padding-top: 90px;}
a {
	color: inherit;
	display: block;
	transition: all ease-in-out .25s;}
a:hover {opacity: .7;}
.sp {display: none}
.pc {display: inherit;}
@media only screen and (max-width: 767px) {
	body {padding-top: 64px}
	.sp {display: inherit}
	.pc {display: none}
}
/*-----　 common　-----------*/
.main-contents { width: 100% }
/**********   Fonts　　**********/
/* 游ゴシック */
.yugothic {
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノUD角ゴ W3 JIS2004", "Hiragino UD Sans W3 JIS2004", "メイリオ", Meiryo, sans-serif}
.yumincho {
	font-family: 'Montserrat', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;}
.yumincho-only {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;}
/*------------------------------------------------------------
**	3. header
------------------------------------------------------------*/
.grobal-header {
	background-color: #fff;
	border-bottom: solid 1px #e6e6e6;
	font-feature-settings: "palt";
	font-weight: bold;
	line-height: 16px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%}
@media only screen and (max-width: 767px) {
	.grobal-header {border-bottom: 0}
}
.grobal-head-pages-inner a:hover {
	color: #3871b8;
	opacity: 1
}
/*== flex ==*/
.grobal-head-nav,
.grobal-head-pages-container,
.bg-gray-menu-contents,
.main-menu-container,
.main-menu-contents,
.main-menu-sub-contents {
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
}
.grobal-head-nav {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.bg-gray-menu-contents {
	-webkit-box-align: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}
.main-menu-container {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}
.bg-gray-list:not(:last-child) {
	-ms-flex-item-align: center;
	align-self: center;
}
.grobal-head-contact,
.gnav_contact_red {
	-ms-flex-item-align: stretch;
	align-self: stretch
}

/*== flex のための指定はここまで　以下は中身==*/


/*====== header Logo ======*/
.head-logo-index {
	margin-top: 25px;
	margin-left: 40px;
    width: 25%;
	max-width: 310px;
}

/*----- 記事カウント　共通 -----*/
.menu-count {
	background-color: #E80700;
	box-sizing: border-box;
	color: #ffffff;
	display: inline-block;
	font-size: 10px;
	letter-spacing: 1;
	line-height: 1.1;
	height: 16px;
	margin-left: 5px;
	padding: 3px 6px 4px;
}

/*----- 左側バー　-----*/
.left-bar {
	padding-left: 20px;
	position: relative;
}

.left-bar::before {
	background-color: #c3c3c3;
	content: '';
	display: inline-block;
	height: 16px;
	position: absolute;
	left: 0;
	top: 4px;
	width: 1px;
}


/*====== グレーメニュー ======*/
.bg-gray-menu-contents {
	background-color: #f5f5f5;
	font-size: 12px;
	padding: 8px 29px 8px 23px;
}

.bg-gray-list:not(:last-child) {
	margin-right: 20px;
}

/*----- 電話番号 -----*/
.bg-gray-list:last-child {
	color: #3871b8;
	line-height: 1;
	position: relative;
}

@media only screen and (max-width: 1150px) {
    .left-bar{padding-left: 14px}
    .head-logo-index {margin-left: 20px}
    .bg-gray-menu-contents {padding: 5px 15px 5px 23px}
    span.buisiness-txt{display: block}
}

/* TEL. */
.font-small {
	font-size: 15px;
}

/* 076-252-6195 */
.tel-number {
	font-size: 20px;
}

/* [平日9:00〜17:00] */
.buisiness-txt {
	font-size: 12px;
	margin-left: 5px;
	line-height: 21px;
	vertical-align: top;
    letter-spacing: 0
}


/*====== メインメニュー（大/小） ======*/
.main-menu-container {
	padding: 18px 28px 18px 0;margin-bottom: 0
}
@media only screen and (max-width: 1150px) {
    .main-menu-container {padding: 10px 15px 10px 0}
}
/*====== メインメニュー（大） ======*/
.main-menu-contents {
	font-size: 15px;
}

.main-menu-list {
    padding-right: 28px;
    margin-right: 27px;
    border-right:1px solid #232323
}
.main-menu-list:nth-of-type(2) {border-right:1px solid #ccc}

/*====== メインメニュー（小） ======*/
.main-menu-sub-contents{
	font-size: 13px}
.main-menu-sub-list:not(:last-child) {
	margin-right: 24px;
}

@media only screen and (max-width: 1100px) {
    .main-menu-list {margin-right:14px}
    .main-menu-sub-list:not(:last-child) {margin-right: 14px}
}
/*====== ドロップダウン・アコーディオン ======*/
.gnav_child{
    position: absolute;
    width: 100vw;
    top:0;
    left:0;
    font-size: 15px;
    margin-top: 70px;
    padding-top:0px;
    overflow: hidden;
    background-color: #fff;
    height: 0;
}
.gnav_child > div{
    border-top:1px solid #c6c6c6;
    border-bottom:1px solid #c6c6c6;
    margin-top: 18px
}

.gnav_child .menu{
    position: relative;
    box-sizing: border-box;
    width: 100%;
    max-width: 1040px;
    margin: 40px auto 50px;
    padding:0 30px 0 360px;
    display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
    background: url("../img/all/accordion_bg.svg");
    background-size: 100%;
}
.gnav_child li{
    display: inline-block;
    width: 290px;
}
.gnav_child li:first-child{
    position: absolute;
    top:calc(50% - 20px);
    left:40px
}
.gnav_child.gnav_child_3 li:first-child{
    position: absolute;
    top:calc(50% - 10px);
    left:40px
}

.gnav_child li a{ 
    text-align:left;
    padding:12px 0;
}

li.accordion3:hover .gnav_child {
    overflow: visible;
    color:#232323;
    background-color: #fff;
    height:auto
}
/* メニュー機能使用のアコーディオン下css */
li.accordion3:hover .menu li a:hover{
    opacity: 1;
    color: #3871B8
}

li.accordion4:hover .gnav_child {
    overflow: visible;
    height: auto;
    color:#232323;
}
/* メニュー機能使用のアコーディオン下css */
li.accordion4:hover .menu li a:hover{
    color: #3871B8;
}

/* 会社情報メニュー */
.bl_menu-about-cont{
    display: flex;
    justify-content: center;
    align-items: stretch;
    margin: 40px auto 50px!important;
}
.bl_menu-about{
    display: inline-block!important;
    max-width: 300px!important;
    margin: 0!important;
    padding: 0!important;
}
.bl_menu-about+.bl_menu-about::before{
    background-color: #e6e6e6;
    content: '';
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    left: -30%;
}
.bl_menu-about li:first-child{
    position: static;
}
.bl_menu-about li.el_title{
    position: absolute;
}
.bl_menu-about li{
    display: block!important;
}
.bl_menu-about li.el_submenuTitle{
    position: absolute;
    padding: 12px 0;
}
.bl_menu-about li.el_submenu span{
    display: block;
    padding: 12px 0;
}
.bl_menu-about li.el_submenu ul{
}
.bl_menu-about li.el_submenu ul li a::before{
    content: 'ー';
    color: #999;
    display: inline-block;
    margin-right: 5px;
}
.bl_menu-about li.el_submenu ul li a:hover::before{
    color: #3871b8;
}
.menu.bl_menu-about{
    background: none!important;
}


/*====== ドロップダウン・アコーディオン 旧 ======*
li.accordion{position: relative}
.gnav_child{
    position: absolute;
    top: 0px;
    font-size: 13px;
    padding-top:28px;
}
.gnav_child_1{
    left:-50px;
    width: 210px}
.gnav_child_2{
    left:-40px;
    width: 150px}

.gnav_child li a{
    text-align: center;
      overflow: hidden;
      height: 0;
      transition: 0.2s;
    background:#fcfcfc;
}

/* メニュー機能使用のアコーディオン下css *
li.accordion:hover #menu-gnav_child_1 li a,
li.accordion:hover #menu-gnav_child_2 li a{
    overflow: visible;
    padding:12px;
    height: auto;
    color:#232323;
    border-bottom:1px solid #999}
li.accordion:hover #menu-gnav_child_1 li a:hover,
li.accordion:hover #menu-gnav_child_2 li a:hover {
    color: #fff;
    background: #3871B8}
li.accordion:hover  #menu-gnav_child_1 li:nth-of-type(1) a,
li.accordion:hover  #menu-gnav_child_2 li:nth-of-type(1) a{border-top:1px solid #999}

/*  accordion2  *
li.accordion2{position: relative}
.gnav_child{
    position: absolute;
    top: 0px;
    font-size: 13px;
    padding-top:28px;
}
.gnav_child_3{
    left:-32px;
    width: 120px}
.gnav_child_4{
    left:-32px;
    width: 140px}
li.accordion2:hover{color: #3871B8}
li.accordion2:hover > ul > li a {
    overflow: visible;
    padding:12px;
    height: auto;
    color:#232323;
    border-bottom:1px solid #999
}
li.accordion2:hover > ul > li a:hover {
    color: #fff;
    background: #3871B8}
li.accordion2:hover > ul > li:nth-of-type(1) a {border-top:1px solid #999}
*/

/*====== お問い合わせ ======*/
.grobal-head-contact-link {
	color: #ffffff;
	background-color: #3871b8;
	font-size: 13px;
	height: 100%;
	padding: 0 27px;
	position: relative;
	text-align: center;
	width: 140px}
.grobal-head-contact-link:hover {
	color: #ffffff;
	background-color: #2e5a93;
	opacity: 1}
.grobal-head-contact-link-txt {
	display: block;
	height: 40px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%}
@media only screen and (max-width: 1100px) {
    .grobal-head-contact-link{width:120px}
}
/*====== お問い合わせ RED ======*/
.attach_file{padding-top:8px}
.file_note{font-size:12px;line-height: 1.5; color: #666;padding-top:10px}
.gnav_contact_red a {
	color: #ffffff;
	background-color: #cc0000;
	font-size: 13px;
	height: 100%;
	padding: 0 27px;
	position: relative;
	text-align: center;
	width: 140px}
.gnav_contact_red a:hover {}
.gnav_contact_red span {
	display: block;
	height: 40px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%}

/* メール　アイコン */
.gnav_contact_red span:before,
.grobal-head-contact span:before{
	background-image: url(../img/all/mail-white.svg);
	content: '';
	display: block;
	height: 16px;
	margin: 0 auto 11px;
	width: 23px;
}




/*******************************************************************************
  Hamburger MENU
*******************************************************************************/
@media only screen and (max-width: 1001px) {
    .grobal-head-nav {display: none}
}
.hamb__wrapper.sp{display: none}
@media only screen and (max-width: 1000px) {
    .hamb__wrapper.sp {display: inherit;}
}
.hamb__wrapper {
    font-weight: 400;
	background-color: #ffffff;
	height: 64px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
}

.head-logo-sp {
	position: absolute;
	top: 16px;
	left: 16px;
	width: 248px;
}

/* ハンバーガーアイコン用　ボタン */
.hamb__checkbox {
	display: none;
}

/* label ハンバーガーアイコン */
.hamb__icon {
	background-color: #ffffff;
	cursor: pointer;
	display: block;
	height: 38px;
	position: absolute;
	top: 13px;
	right: 14px;
	z-index: 10000;
	width: 43px;
}

/* MENU　ボタン */
.hamb__icon::after {
	background-image: url(../img/all/hamb_menu.svg);
	background-repeat: no-repeat;
	content: '';
	display: block;
	height: 8px;
	margin: 0 auto;
	position: absolute;
	bottom: 2px;
	left: 5px;
	width: 33px;
}

/* 3本線 */
.hamb__icon-parts,
.hamb__icon-parts:before,
.hamb__icon-parts:after {
	background-color: #232323;
	display: block;
	height: 1px;
	margin: auto;
	position: absolute;
	top: -8px;
	right: 0;
	left: 0;
	bottom: 0;
	width: 32px;
}

.hamb__icon-parts,
.hamb__icon-parts:before,
.hamb__icon-parts:after {
	content: "";
}

.hamb__icon-parts:before {
	top: 15px;
}

.hamb__icon-parts:after {
	top: -15px;
}


/* メニュー　開 */
.hamb__menu {
	background-color: #ffffff;
	color: #000;
	max-width: 100%;
	width: 100%;
	height: 100vh;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	/* topは0にする(スクロール確保) */
	top: 0;
	right: -100%;
}
/* メニュー　開位置 */
.hamb__checkbox:checked ~ .hamb__menu {
	right: 0;
}

/* 開閉をスムーズに */
.hamb__icon-parts:after,
.hamb__icon-parts:before{
	-webkit-transition: all 0.7s;
	transition: all 0.7s;
}


/* ハンバーガー内　すべてのメニュー */
.hamb_all_inner {
	height: 100%;
	overflow: auto;
	padding-top: 64px;
	position: relative;
}

/* ハンバーガー内のロゴはfixedしない */
.hamb_inner_logo {
	position: absolute;
	top: 16px;
	left: 16px;
	width: 248px;
}


.hamb__icon {
	z-index: 4;
}

.hamb__menu {
	z-index: 3;
}

/* 3本線　開閉モーション */
.hamb__checkbox:checked ~ .hamb__icon {
	top: 12px;
}

/* CLOSE ボタン */
.hamb__checkbox:checked ~ .hamb__icon::after {
	background-image: url(../img/all/hamb_close.svg);
}

.hamb__checkbox:checked ~ .hamb__icon .hamb__icon-parts {
	background: transparent;
}

.hamb__checkbox:checked ~ .hamb__icon .hamb__icon-parts:before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 0;
	width: 65%;
}

.hamb__checkbox:checked ~ .hamb__icon .hamb__icon-parts:after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 0;
	width: 65%;
}


/*======= ハンバーガー内　メニュー =======*/
.hamb__ul {
	font-size: 14px;
	margin: 0 auto 40px;
	width: 90%;
}

.hamb__ul {
	border-top: solid 1px #e6e6e6;
}

.hamb__li {
	border-bottom: solid 1px #e6e6e6;
	line-height: 54px;
	position: relative;
}

/* ＞　アイコン */
.hamb__li:not(.switchbox) .hamb__link::after {
	border-right: solid 2px #3871b8;
	border-bottom: solid 2px #3871b8;
	content: '';
	display: block;
	height: 8px;
	position: absolute;
	right: 13px;
	top: 25px;
	transform: rotate(-45deg);
	width: 8px;
}

/*----- サブメニュー開閉 -----*/
.switchbox label {
	display: block;
	cursor: pointer;
	position: relative;
}

/*チェックボックスを非表示にする*/
.switchbox input {
	display: none;
}

/*中身を非表示にしておく
.switchbox ul,*/
.switchbox .hamb__child__ul{
	height: 0;
	overflow-y: hidden;
	transition: 0.8s;
	/*ゆっくり開く*/
	opacity: 0;
}

/*クリックで中身を表示*
.switchbox input:checked + label + ul*/
.switchbox input:checked + label + .hamb__child__ul{
	height: auto;
	opacity: 1;
}

/* ＋アイコン（横） */
.switchbox label::after {
	background-color: #3871b8;
	content: '';
	display: block;
	height: 2px;
	position: absolute;
	top: 26px;
	right: 10px;
	width: 12px;
}

/* ＋アイコン（縦） */
.switchbox label::before {
	background-color: #3871b8;
	content: '';
	display: block;
	height: 12px;
	position: absolute;
	top: 21px;
	right: 15px;
	width: 2px;
}

/* クリックで　ーアイコン（縦消し） */
.switchbox input:checked + label::before {
	display: none;
}

/* サブメニュー中身 style
.hamb__child__ul, */
.hamb__child__ul ul {
	border-top: solid 1px #e6e6e6;
	color: #636363;
	font-size: 12px;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.hamb__child__ul li{
	border-bottom: solid 1px #e6e6e6;
	line-height: 1.4;
	padding-left: 9px;
	position: relative;
	width: calc((100% - 16px) / 2);
}
.hamb__child__ul li:last-child,
.hamb__child__ul li:nth-last-child(2){
    border-bottom:none
}

.hamb__child__ul a{
	padding: 17px 0;
}
.hamb__child__ul li a:before{
	content: '-';
	position: absolute;
	left: 0;
}

/* 経営コンサルティング / 税務・会計　--- 調整 */
.hamb__child__ul li:first-child{
	padding-left: 0;
	width: 100%;
}

.hamb__child__ul li:first-child a:before{
	display: none;
}
/* ----- */

.hamb__child__li.clear-border {
	border-bottom: 0;
}

/* 会社情報 */
.hamb__child__ul.about li{
    display: block;
	padding-left: 9px!important;
    width: 100%!important;
}
.hamb__child__ul.about li.pdNone{
	padding-left: 0!important;
}
.hamb__child__ul.about li.pdNone > a{
	padding-left: 9px!important;
}
.hamb__child__ul.about li span{
    display: block!important;
	padding: 17px 0 0!important;
	padding-left: 9px!important;
}
.hamb__child__ul.about li:first-child a:before,
.hamb__child__ul.about li a::before,
.hamb__child__ul.about li span::before{
	content: '-'!important;
    display: block!important;
	position: absolute!important;
	left: 0!important;
}
.hamb__child__ul.about li .bl_subMenu{
    border: 0!important;
    display: flex!important;
    font-size: 12px!important;
    padding-bottom: 17px!important;
    width: 100%!important;
}
.hamb__child__ul.about li .bl_subMenu li,
.hamb__child__ul.about li .bl_subMenu li:last-child,
.hamb__child__ul.about li .bl_subMenu li:nth-last-child(2){
	border-bottom: solid 1px #e6e6e6!important;
	width: calc((100% - 16px) / 2)!important;
}
.hamb__child__ul.about li .bl_subMenu li a:before{
	content: '-'!important;
	position: absolute!important;
	left: 0!important;
}

/*--- 外部リンク ---*
.hamb-ex-contents {
	border-top: solid 1px #e6e6e6;
	font-weight: normal;
	font-size: 12px;
}
.hamb-ex-list {
	border-bottom: solid 1px #e6e6e6;
	line-height: 54px;
	padding: 0 20px;
}
.hamb-ex-list-link::after {
	background-image: url(../img/all/hamb_ex_tab.svg);
	background-repeat: no-repeat;
	content: '';
	display: inline-block;
	height: 11px;
	margin-left: 5px;
	width: 15px;
}*/

.hnav_otherCo ul{
    border-top: solid 1px #e6e6e6;
	font-weight: normal;
    font-size: 12px}
.hnav_otherCo li{
    border-bottom: solid 1px #e6e6e6;
	line-height: 54px;
	padding: 0 5%}
.hnav_otherCo li a::after {
	background-image: url(../img/all/hamb_ex_tab.svg);
	background-repeat: no-repeat;
	content: '';
	display: inline-block;
	height: 11px;
	margin-left: 5px;
	width: 15px;}



/*--- プライバシーポリシー / Facebook ---*/
.hamb-other-contents {
	font-size: 12px;
	font-weight: normal;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 45px auto 32px;
}

.hamb-other-list:not(:last-child) {
	margin-right: 30px;
}

.hamb-other-sns {
	height: 20px;
	width: 20px;
}


/************* Breadcrumbs *************/
.breadcrumbs {
	border-bottom: solid 1px #e6e6e6;
	color: #999999;
	font-size: 12px;
	line-height: 43px;
	padding-left: 44px;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノUD角ゴ W3 JIS2004", "Hiragino UD Sans W3 JIS2004", "メイリオ", Meiryo, sans-serif;
}
@media all and (-ms-high-contrast: none) { /* IE10以降 */
    .breadcrumbs {padding-top:25px}
}
.breadcrumbs a{
    padding-bottom: 3px;
    border-bottom: solid 1px #fff;
    display: inline}
.breadcrumbs a:hover{border-bottom: solid 1px #999;}
@media only screen and (max-width: 767px) {
	.breadcrumbs {
		border-top: solid 1px #e6e6e6;
		font-size: 11px;
		line-height:1.4;
		padding: 15px 10px 15px 15px}
}


/*------------------------------------------------------------
**
**	4. footer
**
------------------------------------------------------------*/

/*========== footer すべて包含 ==========*/
.grobal-footer {
	margin-top: auto;
	position: relative;
	font-feature-settings: "palt";
}

/*========== お問い合わせ（グレー） ==========*/
.foot-contact-block {
	background-color: #f5f5f5;
	color: #3871b8;
	font-weight: bold;
	padding: 56px 0 0;
	text-align: center;
    position: relative
}

.foot-contact-txt {
	font-size: 20px;
	margin: 0 auto 32px;
}

.foot-contact-container {
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0 auto 60px;
}

.foot-tel-box,
.foot-form-box {
	height: 100px;
	margin: 0 10px;
	width: 320px;
}

/*== TEL.076-252-6195 ==*/
.foot-tel-box {
	border: solid 2px #3871b8;
	padding: 10px 0;
}

/* PCは発信させない */
.foot-tel-link {
	pointer-events: none;
}

.foot-tel-number {
	font-size: 24px;
	letter-spacing: 0.08em;
}

.foot-tel-small {
	font-size: 18px;
}

.foot-tel-info {
	font-size: 12px;
	line-height: 1.4;
}

/*== メールフォームでのお問い合わせ ==*/
.foot-form-link {
	background-color: #ffffff;
	height: 100%;
	padding: 28px 0;
	position: relative;
}

/* ＞　アイコン */
.foot-form-link::after {
	border-bottom: solid 1px #3871b8;
	border-right: solid 1px #3871b8;
	content: '';
	display: block;
	height: 9px;
	position: absolute;
	top: 50%;
	right: 013px;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%) rotate(-45deg);
	transition: all .25s ease-in-out;
	width: 9px
}

.foot-form-link:hover {
	background-color: #3871b8;
	color: #ffffff;
	opacity: 1;
}

.foot-form-link:hover::after {
	border-bottom: solid 1px #ffffff;
	border-right: solid 1px #ffffff;
}


/* HATAKE Management Group */
.foot-blue-band {
	background-color: #3871b8;
	color: #ffffff;
	font-size: 18px;
	font-weight: normal;
	padding: 26px 120px;
	text-align: left;
}
/********** PAGE TOP **********/
.pagetop {
	background-color: #3871b8;
	border: solid 1px #ffffff;
	border-radius: 50%;
	cursor: pointer;
	height: 40px;
	position: absolute;
	right: 130px;
    bottom:20px;
	width: 40px;
	z-index: 100
}

.pagetop::after {
	border-top: solid 1px #ffffff;
	border-right: solid 1px #ffffff;
	content: '';
	display: block;
	height: 9px;
	position: absolute;
	top: 16px;
	right: 14px;
	transform: rotate(-45deg);
	width: 9px;
}

.pagetop:hover {
	background-color: #ffffff;
	border: solid 1px #3871b8;
}

.pagetop:hover::after {
	border-top: solid 1px #3871b8;
	border-right: solid 1px #3871b8;
}


@media only screen and (max-width: 767px) {
	.pagetop {
		right: 5%;
	}
}

@media only screen and (max-width: 767px) {
	.foot-contact-block {
		padding: 36px 0 0;
	}

	.foot-contact-container {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		margin: 0 auto 20px;
	}

	.foot-contact-txt {
		line-height: 1.5;
		margin: 0 auto 26px;
	}

	.foot-tel-box,
	.foot-form-box {
		margin: 0 auto 20px;
		max-width: 320px;
		width: 90%;
	}

	.foot-blue-band {
		font-size: 15px;
		padding: 26px 5%;
	}
}


/*========== footerメニュー（紺） ==========*/


.foot-menu-block {
	background-color: #001e32;
	color: #ffffff;
	padding: 57px 0 0;
}

.foot-menu-container {
	margin: 0 auto ;
    padding-bottom:30px;
	width: 1040px;
}

/*=== メインメニュー ===*/
.foot-site-menu-container {
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 auto 77px;
}
/* メニュー機能を使用（ulの１〜２番目）  */
.foot-site-menu-container .menu li{padding-bottom:8px}
.foot-site-menu-container .menu li span{display: none}
.foot-site-menu-container .menu li:first-child a{
    display: block;
	font-size: 14px;
	font-weight: bold;
}
.foot-site-menu-container .menu li:not(:first-child) a{
    font-size: 12px;
	font-weight: normal;
	padding-left: 9px;
	position: relative}
.foot-site-menu-container .menu li:not(:first-child) a:before {
	content: '-';
	position: absolute;
    left: 0}


/* 以前の（ulの３〜５番目） */
.foot-site-menu-head {
	display: block;
	font-size: 14px;
	font-weight: bold;
}

.foot-site-menu-list:not(:last-child) .foot-site-menu-head {
	margin-bottom: 12px;
}

.foot-site-menu-sub{
	font-size: 12px;
	font-weight: normal;
	padding-left: 9px;
	position: relative;
}

.foot-site-menu-list:not(:last-child) .foot-site-menu-sub {
	margin-bottom: 9px;
}

.foot-site-menu-sub::before {
	content: '-';
	position: absolute;
	left: 0;
}



/*=== 外部リンクメニュー ===*/
.fnav_otherCo ul{
    font-size: 12px;
	margin: 0 auto 40px;
	padding: 20px 0;
    border-top: solid 1px #334b63;
	border-bottom: solid 1px #334b63
}
.fnav_otherCo li{
    padding: 10px 0;
    display:inline-block;
    position: relative}
.fnav_otherCo li:not(:last-child) {
    margin-right:40px}
.fnav_otherCo li:after {
	background: url(../img/all/tab_white.svg)no-repeat;
	content: '';
    position: absolute;
    top:14px;right:-20px;
    width: 15px;
	height: 11px;
}
.fnav_otherCo li:nth-of-type(6):after {
    background:none
}
/*
.fnav_otherCo ul:after{
    padding-left:40px;
    content:"株式会社 畠フィナンシャルエージェンシー"
}
/*=== ロゴ / 住所 / copyright / プライバシーポリシー / Facebook ===*/

.foot-add-txt-container,
.foot-add-container,
.foot-sub-container,
.foot-sub-box {
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.foot-add-txt-container,
.foot-sub-container {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.foot-add-txt-container {
	font-size: 12px;
	margin: 0 auto 75px;
}

.foot-logo {
	width: 310px;
}
.foot-add-txt span{padding-left:12px}
.foot-add-txt:not(:last-child) {
	margin-right: 54px;
}

.foot-sub-container {
	font-size: 12px;
}

.foot-sub-menu:not(:last-child) {
	margin-right: 30px;
}

.foot-sub-sns-img {
	height: 20px;
	width: 20px;
}

@media only screen and (max-width: 767px) {
	.foot-menu-block {
		padding: 40px 0 84px;
	}

	.foot-site-menu-container,
	.foot-ex-menu-container,
    .fnav_others,
	.foot-sub-box {
		display: none;
	}

	.foot-menu-container {
		width: 90%;
	}

	.foot-add-container,
	.foot-add-txt-container,
	.foot-sub-container {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		margin: 0 auto 20px;
		text-align: center;
		width: 100%;
	}

	.foot-add-txt-container {
		margin: 0 auto 32px;
	}

	.foot-logo {
		max-width: 250px;
		margin: 0 auto 24px;
		width: 100%;
	}

	.foot-add-txt:not(:last-child) {
		margin: 0 auto 15px;
	}

	.foot-add-txt {
		line-height: 1.75;
		margin: 0 auto;
	}
    .foot-add-txt span{padding-left:0}
}



/*========== footer固定メニュー（PC/SP共通） ==========*/

.foot-fix-menu {
	background-color: rgba(56, 113, 184, .8);
	line-height: 1;
	text-align: center;
	width: 100%;
}

.foot-fix-contents {
	border-right: solid 1px #ffffff;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0 auto;
	width: 1040px;
}

.foot-fix-list {
	border-left: solid 1px #ffffff;
	position: relative;
	width: 50%;
}

.foot-fix-link {
	height: 60px;
	position: relative;
	width: 100%;
}

.foot-fix-txt-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
}

.foot-fix-link.tel {
	font-size: 24px;
	font-weight: 700;
}

.foot-fix-small {
	font-size: 18px;
}

.foot-fix-buisiness {
	font-size: 12px;
	font-weight: normal;
	margin-left: 14px;
	line-height: 2;
	vertical-align: top;
}

.foot-fix-link.form {
	font-size: 14px;
}

.foot-fix-link.form .foot-fix-txt-inner::before {
	background-image: url(../img/all/mail-white.svg);
	background-repeat: no-repeat;
	content: '';
	display: inline-block;
	height: 11px;
	margin-right: 7px;
	width: 16px;
}


@media only screen and (max-width: 767px) {
	.foot-fix-menu {
		background-color: #3871b8;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 100;
	}

	.foot-fix-contents {
		border-right: 0;
		width: 100%;
	}

	.foot-fix-list:first-child {
		border-left: 0;
	}

	.foot-fix-link {
		height: 48px;
	}

	.foot-fix-txt-inner {
		font-size: 14px;
		font-weight: normal;
	}

	.foot-fix-link.tel .foot-fix-txt-inner::before {
		background-image: url(../img/all/tel-white.svg);
		background-repeat: no-repeat;
		content: '';
		display: inline-block;
		height: 14px;
		margin-right: 7px;
		vertical-align: bottom;
		width: 14px;
	}
}












/***************************
	畠経営グループのサービス一覧
***************************/
.top-service-block {
	padding: 112px 0 0;
}

/* サブタイトル共通 */
.top-service-title {
	font-size: 24px;
	font-weight: normal;
	text-align: center;
}

/* ー */
.top-service-title::after {
	background-color: #3871b8;
	content: "";
	display: block;
	height: 1px;
	margin: 10px auto 40px;
	width: 40px;
}

/* グレー背景 */
.top-service-mc-container,
.top-service-tms-container {
	background-color: #f5f5f5;
}

.top-service-mc-container {
	padding-top: 75px;
}

.top-service-tms-container {
	padding-top: 70px;
	padding-bottom: 50px;
}

/* 入れ替えで書き換え　↑は古い  */
.top-service-container-1st,
.top-service-container-2nd{
    background-color: #f5f5f5;
    padding-top: 75px}
.top-service-container-2nd{padding-bottom: 50px}




.top-service-contents {
	border-bottom: solid 1px #e6e6e6;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0 auto;
	width: 1040px;
}
.top-service-container-2nd .top-service-contents,
.top-service-tms-container .top-service-contents {
	border-bottom: 0;
}

/* ３並びフレックス対応 */
.top-service-contents::after {
	content: "";
	display: block;
	width: 30%;
}

.top-service-list {
	margin-bottom: 70px;
	width: 30.7%;
}

.top-service-list-link:hover {
	opacity: 1;
}

/* イメージ */
.top-service-pic {
	height: 0;
	margin: 0 auto 20px;
	overflow: hidden;
	padding-bottom: 50.1%;
	position: relative;
}

/* イメージ */
.top-service-pic-img {
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	transition: all .25s ease-in-out;
	width: 100%;
}
@media all and (-ms-high-contrast: none) { /* IE10以降 */
    img.top-service-pic-img{width: 320px; height: 160px;overflow: hidden}
}

.top-service-pic-img:hover {
	height: 110%;
	width: 110%;
}

/* 記事タイトル */
.top-service-head {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 12px;
}

/* 説明 */
.top-service-txt {
	font-size: 14px;
	line-height: 1.7;
	margin: 0 auto 18px;
	overflow: hidden;
}

.top-service-inner-container {
	border-left: solid 1px #3871b8;
	border-right: solid 1px #3871b8;
	margin: 0 auto 18px;
	padding: 8px 18px;
	position: relative;
}

.top-service-inner-container::before {
	border-top: solid 1px #3871b8;
	border-bottom: solid 1px #3871b8;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 10px;
}

.top-service-inner-container::after {
	border-top: solid 1px #3871b8;
	border-bottom: solid 1px #3871b8;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 10px;
}

/* 対象となる方 */
.top-service-inner-head {
	color: #3871b8;
	font-size: 14px;
	font-weight: bold;
	margin: 0 auto 10px;
}

.top-service-inner-list {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	padding-left: 20px;
	position: relative;
}

.top-service-inner-list::before {
	background-image: url(../img/top/check-box.svg);
	background-repeat: no-repeat;
	content: "";
	display: block;
	height: 15px;
	position: absolute;
	left: 0;
	top: 1px;
	width: 15px;
}

.top-service-inner-list:not(:last-child) {
	margin-bottom: 5px;
}

/* 詳しく見る　ボタン */
.top-service-more-btn {
	background-color: #ffffff;
	border: solid 1px #3871b8;
	color: #3871b8;
	font-size: 14px;
	font-weight: bold;
	height: 48px;
	line-height: 48px;
	position: relative;
	text-align: center;
	transition: all .25s ease-in-out;
	width: 160px;
}

/* ＞　アイコン */
.top-service-more-btn::after {
	border-bottom: solid 1px #3871b8;
	border-right: solid 1px #3871b8;
	content: "";
	display: block;
	height: 7px;
	position: absolute;
	right: 14px;
	top: 20px;
	transform: rotate(-45deg);
	transition: all .25s ease-in-out;
	width: 7px;
}

.top-service-more-btn:hover {
	background-color: #3871b8;
	color: #ffffff;
}

.top-service-more-btn::after:hover {
	border-bottom: solid 1px #ffffff;
	border-right: solid 1px #ffffff;
}

@media only screen and (max-width: 767px) {
    .top-service-container-1st,
    .top-service-container-2nd{
        padding-top: 35px;
    }
    .top-service-container-2nd{padding-bottom: 0}

	.top-service-contents::after {
		display: none;
	}

	.top-service-title {
		font-size: 20px;
	}

	.top-service-title::after {
		margin: 10px auto 24px;
	}

	.top-service-contents {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		width: 100%;
	}

	.top-service-list {
		margin: 0 auto 40px;
        padding:0 8px;
		width: 90%;
	}

	.top-service-pic {
		padding-bottom: 58.5%;
	}
	.top-service-more-btn {
		background-color: #3871b8;
		color: #ffffff;
	}

	.top-service-more-btn::after {
		border-bottom: solid 1px #ffffff;
		border-right: solid 1px #ffffff;
	}
}


/***************************
	経営コンサルティング
	税務・会計
***************************/

.top-pagelink-contents {
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
}

.top-pagelink-list {
	position: relative;
}

.top-pagelink-list-link {
	position: relative;
}

.top-pagelink-list-link:hover {
	opacity: 1;
}

.top-pagelink-list-link::after {
	background-color: rgba(0, 30, 60, .5);
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	transition: all .25s ease-in-out;
	width: 100%;
}

.top-pagelink-list-link:hover::after {
	background-color: rgba(0, 30, 60, .8);
}

.top-pagelink-pic {
	line-height: 0;
	position: relative;
}

.top-pagelink-txt-box {
	color: #ffffff;
	height: 0;
	margin: 0 auto;
	overflow: hidden;
	padding-bottom: 44%;
	padding-top: 10%;
	position: absolute;
	top: 0;
	text-align: center;
	z-index: 1;
	width: 100%;
}

.top-pagelink-title {
	font-size: 40px;
	font-size: 3.125vw;
	font-weight: normal;
	line-height: 1.45;
	padding-bottom: 4.8%;
}

.top-pagelink-title-en {
	display: block;
	font-size: 16px;
	font-size: 1.25vw;
	font-weight: 700;
}

.top-pagelink-txt {
	font-size: 14px;
	font-size: 1.09375vw;
	line-height: 1.8;
	padding-bottom: 5.5%;
	font-weight: bold;
}

.top-pagelink-btn {
	border: solid 1px #ffffff;
	font-size: 14px;
	font-size: 1.09375vw;
	font-weight: bold;
	height: 0;
	margin: 0 auto;
	overflow: hidden;
	padding-top: 2.2%;
	padding-bottom: 5.2%;
	position: relative;
	transition: all .25s ease-in-out;
	width: 25%;
}

/* ＞　アイコン */
.top-pagelink-btn::after {
	border-bottom: solid 1px #ffffff;
	border-right: solid 1px #ffffff;
	content: "";
	display: block;
	height: 0;
	padding-bottom: 3.5%;
	position: absolute;
	right: 14px;
	top: 44%;
	transform: rotate(-45deg);
	transition: all .25s ease-in-out;
	width: 4.3%;
}

.top-pagelink-list-link:hover .top-pagelink-btn {
	background-color: #3871b8;
	border: solid 1px #3871b8;
}

@media only screen and (max-width: 767px) {
	.top-pagelink-contents {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}
    

	.top-pagelink-list {
		margin: 0 auto 50px;
		width: 100%;
	}

	.top-pagelink-list-link {
		pointer-events: none;
	}

	.top-pagelink-list-link::after {
		display: none;
	}

	.top-pagelink-pic {
		height: 240px;
		overflow: hidden;
	}

	.top-pagelink-pic-img {
		height: 100%;
		object-fit: cover;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		width: 100%;
	}

	.top-pagelink-pic::after {
		background-color: rgba(0, 30, 60, .5);
		content: "";
		display: block;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		transition: all .25s ease-in-out;
		width: 100%;
	}

	.top-pagelink-txt-box {
		color: #232323;
		height: auto;
		max-width: 270px;
		padding: 0;
		position: static;
		width: 90%;
	}

	.top-pagelink-title {
		color: #ffffff;
		font-size: 24px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		top: 93px;
		left: 0;
		width: 100%;
	}

	.top-pagelink-title-en {
		font-size: 12px;
	}

	.top-pagelink-txt {
		font-size: 14px;
		margin: 25px auto;
		padding: 0;
       font-weight: 400}

	.top-pagelink-btn-link-sp {
		border: solid 1px #3871b8;
		color: #3871b8;
		font-size: 14px;
		font-weight: bold;
		height: 48px;
		line-height: 48px;
		margin: 0 auto;
		position: relative;
		transition: all .25s ease-in-out;
		text-align: center;
		width: 160px;
	}

	/* ＞　アイコン */
	.top-pagelink-btn-link-sp::after {
		border-bottom: solid 1px #3871b8;
		border-right: solid 1px #3871b8;
		content: "";
		display: block;
		height: 7px;
		position: absolute;
		right: 14px;
		top: 20px;
		transform: rotate(-45deg);
		transition: all .25s ease-in-out;
		width: 7px;
	}
}


/*========================
	畠経営グループについて
========================*/

.top-group-block {
	border-top: solid 1px #e6e6e6;
	padding: 110px 0 0;
}

.top-group-box-upper,
.top-group-box-under {
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
}

.top-group-box-inner {
	position: relative;
	width: 100%;
}

.top-group-box-link {
	position: relative;
}

/* ブルー 50% */
.top-group-box-link::after {
	background-color: rgba(0, 30, 60, .5);
	content: "";
	display: block;
	height: 100%;
	mix-blend-mode: multiply;
	position: absolute;
	top: 0;
	transition: all .25s ease-in-out;
	left: 0;
	width: 100%;
}

/* hover */
.top-group-box-link:hover {
	opacity: 1;
}

/* ブルー 80% */
.top-group-box-link:hover::after {
	background-color: rgba(0, 30, 60, .8);
}

.top-group-box-link:hover .top-group-box-img {
	height: 110%;
	width: 110%;
}

/* hover ここまで */


.top-group-box-pic {
	height: 0;
	line-height: 0;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.top-group-box-upper .top-group-box-pic {
	padding-bottom: 43%;
}

.top-group-box-under .top-group-box-pic {
	padding-bottom: 55%;
}

.top-group-box-img {
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	transition: all .25s ease-in-out;
	width: 100%;
}

.top-group-box-title {
	color: #ffffff;
	font-size: 24px;
	font-size: 1.875vw;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	transition: all .25s ease-in-out;
	text-align: center;
	z-index: 1;
}

.top-group-box-title-en {
	display: block;
	font-size: 12px;
	font-size: 0.9375vw;
	font-weight: 700;
}

.recruit-tab::after {
	background-image: url(../img/all/tab_white.svg);
	background-repeat: no-repeat;
	content: "";
	display: block;
	height: 0;
	padding-bottom: 20%;
	position: absolute;
	right: -2.6vw;
	top: 43%;
	width: 1.22vw;
}

@media only screen and (max-width: 767px) {
	.top-group-block {
		padding: 75px 0 0;
	}

	.top-group-box-upper,
	.top-group-box-under {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.top-group-box-upper .top-group-box-pic,
	.top-group-box-under .top-group-box-pic {
		padding-bottom: 53%;
	}

	.top-group-box-title {
		font-size: 5.2vw;
	}

	.top-group-box-title-en {
		font-size: 3.2vw;
	}
	
	.recruit-tab::after {
		height: 11px;
		right: -33px;
		width: 15px;
	}
}



/********************
 よくある質問
********************/

.faq-container {
	margin: 0 auto;
	padding: 10px 0 100px;
	text-align: justify;
	width: 880px;
}

.faq-switchbox {
	border-bottom: solid 1px #e6e6e6;
	position: relative;
}

.faq-switchbox label,
.faq-checkbox-child {
	padding-left: 80px;
	padding-right: 93px;
}

.faq-switchbox label {
	cursor: pointer;
	display: block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.45;
	position: relative;
}

.faq-switchbox label span {
	display: inline-block;
	padding-top: 40px;
	padding-bottom: 38px;
}

/*== Q ==*/
.faq-switchbox label span::before {
	background-color: #000000;
	border-radius: 50%;
	color: #ffffff;
	content: "Q";
	display: block;
	font-size: 20px;
	font-weight: 700;
	height: 40px;
	letter-spacing: normal;
	line-height: 40px;
	position: absolute;
	top: calc(50% - 22px);
	left: 20px;
	text-align: center;
	width: 40px;
}

/*--- クリックアイコン ---*/
.faq-switchbox label span::after {
	background-color: #3871b8;
	border-radius: 50%;
	color: #ffffff;
	content: "＋";
	display: block;
	font-size: 16px;
	height: 20px;
	line-height: 21px;
	letter-spacing: normal;
	width: 20px;
	position: absolute;
	top: calc(50% - 10px);
	right: 20px;
	text-align: center;
	transition: all .3s ease-in-out;
}

/*--- チェックボックスを非表示にする ---*/
.faq-switchbox input {
	display: none;
}

/*--- 中身を非表示にしておく ---*/
.faq-checkbox-wrapper {
	height: 0;
	margin-top: 0;
	opacity: 0;
	overflow-y: hidden;
	transition: all .7s ease;
}

.faq-checkbox-child {
	line-height: 180%;
	padding-top: 6px;
	padding-bottom: 39px;
	position: relative;
}

/*--- クリックで中身を表示 ---*/
.faq-switchbox input:checked + label + .faq-checkbox-wrapper {
	font-weight: 300;
	height: auto;
	opacity: 1;
}

/*== A ==*/
.faq-checkbox-child::before {
	background-color: #3871b8;
	border-radius: 50%;
	color: #ffffff;
	content: "A";
	display: block;
	font-size: 20px;
	font-weight: 700;
	height: 40px;
	letter-spacing: normal;
	line-height: 40px;
	position: absolute;
	top: 0;
	left: 20px;
	text-align: center;
	width: 40px;
}

/*--- クリックでアイコン入れ替え ---*/
.faq-switchbox input:checked + label span::after {
	content: "−";
	font-weight: normal;
	letter-spacing: 0;
	transform: rotate(180deg);
}

@media only screen and (max-width: 767px) {
	.mc-faq-block .sub-heading {
		margin-bottom: 7px}
	
	.faq-container {
		padding: 0 0 60px;
		width: 90%}
	
	.faq-switchbox label span {
		padding-top: 25px;
		padding-bottom: 20px}

	.faq-switchbox label,
	.faq-checkbox-child {
		padding-left: 42px;
		padding-right: 36px} 
	
	.faq-switchbox label span::before,
	.faq-checkbox-child::before {
		font-size: 16px;
		line-height: 32px;
		left: 0;
		height: 32px;
		width: 32px}
	
	.faq-switchbox label span::before {
		top: 20px}
	
	.faq-switchbox label span::after {
		right: 0}
	
	.faq-switchbox label {
		font-size: 18px}
	
	.faq-checkbox-child {
		font-size: 14px}
}



/*-------------------------------------
    汎用テンプレート用
-------------------------------------*/
/*========== 共通・メイン部分 ==========*/
.bl_hanyouCont ul,
.bl_hanyouCont li {list-style:none}
.bl_hanyouCont a {display: block}
.bl_hanyouCont .main-contents {
	font-feature-settings: "palt";
	margin: 0 auto 40px;
}
.bl_hanyouCont{
	padding: 100px 0 0;
}
.bl_hanyouCont .main-title {
	font-size: 40px;
	font-weight: normal;
	line-height: 1.5;
	margin: 0 auto 72px;
	text-align: center;
}
.bl_hanyouCont .main-title-en {
	color: #999999;
	display: block;
	font-weight: 700;
	font-size: 16px;
}
.bl_hanyouCont .head-main-pic {
	line-height: 0;
	margin-bottom: 113px;
	width: 100%;
}
.bl_hanyouCont .top-group-block {
	border-top: 0;
	padding-top: 0;
}
@media only screen and (max-width: 767px) {
	.bl_hanyouCont{
		padding: 45px 0 0;
	}
	.bl_hanyouCont .main-title {
		font-size: 28px;
		margin: 0 auto 34px;
	}

	.bl_hanyouCont .main-title-en {
		font-size: 12px;
	}

	.bl_hanyouCont .head-main-pic {
		margin-bottom: 55px;
	}
}

/*========== 内容部分 ==========*/
.bl_hanyou{
    max-width: 960px;
    margin: 0 auto 120px;
}
.bl_hanyou .head-info {
	font-size: 28px;
	line-height: 1.5;
	margin-bottom: 45px;
	text-align: center;
}
.bl_hanyou .head-info-txt{
	line-height: 2;
    width: 95%;
    max-width: 960px;
    margin: 0 auto;
	text-align: center;
}
@media only screen and (max-width: 1000px) {
	.bl_hanyou {
		max-width: 90%;
    }
}
@media only screen and (max-width: 767px) {
	.bl_hanyou .head-info-box {
		margin: 0 auto;
		max-width: 90%;
	}
    .bl_hanyou .head-info {
		font-size: 24px;
		margin-bottom: 28px;
	}
}
@media only screen and (max-width: 539px) {
    .bl_hanyou .head-info-txt{
        text-align: left;
	}
}

/*========== スポンサーリスト ==========*/
.bl_hanyou .bl_sponsorList{
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    margin-top: 40px;
}
.bl_hanyou .bl_sponsorList .bl_sponsorCol+.bl_sponsorCol{
    border-top: 1px solid #ccc;
    margin-top: 40px;
    padding-top: 40px;
}
.bl_hanyou .bl_sponsorList .bl_sponsorCol{
    font-size: 18px;
    font-weight: bold;
}
.bl_hanyou .bl_sponsorList .bl_sponsorCol img{
    margin-bottom: 10px;
}
@media (min-width:768px){
    .bl_hanyou .bl_sponsorList .bl_sponsorCol{
        width: 48%;
    }
    .bl_hanyou .bl_sponsorList .bl_sponsorCol+.bl_sponsorCol{
        border: 0;
        margin-top: 0;
        padding-top: 0;
    }
    .bl_hanyou .bl_sponsorList .bl_sponsorCol:nth-child(n+3){
        margin-top: 40px;
    }
}

/*========== スポンサー詳細ページ ==========*/
/* スペーサー */
.bl_hanyou .bl_spacer{
    width: 100%;
    height: 60px;
}

/* 見出し */
.bl_hanyou h2{
    border-bottom: 1px solid #3871b8;
    font-size: 24px;
    margin-bottom: 20px;
    padding-bottom: 5px;
}
@media (min-width:768px){
    .bl_hanyou h2{
        font-size: 32px;
    }
}

/* dlリスト */
.bl_hanyou .bl_dlCont{
    margin: 20px auto;
}
.bl_hanyou .bl_dlCont dl{
    border-bottom: 1px solid #ccc;
    padding-bottom: 20px;
}
.bl_hanyou .bl_dlCont dl+dl{
    margin-top: 20px;
}
.bl_hanyou .bl_dlCont dt{
    color: #3871b8;
    font-weight: bold;
}
.bl_hanyou .bl_dlCont dd{
    margin-top: 10px;
}
@media (min-width:768px){
    .bl_hanyou .bl_dlCont dl{
        border: 0;
        display: flex;
        justify-content: flex-start;
        align-items: stretch;
        flex-wrap: wrap;
        padding: 0;
    }
    .bl_hanyou .bl_dlCont dl+dl{
        margin-top: 10px;
    }
    .bl_hanyou .bl_dlCont dt{
        width: 20%;
    }
    .bl_hanyou .bl_dlCont dd{
        margin: 0;
        width: 75%;
    }
}

/* SNSリンク */
.bl_hanyou .bl_snsList{
    margin-top: 40px;
}
.bl_hanyou .bl_snsList li+li{
    margin-top: 10px;
}
.bl_hanyou .bl_snsList li a{
    color: #3871b8;
    font-weight: bold;
    padding-left: 30px;
    position: relative;
}
.bl_hanyou .bl_snsList li a::before{
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 2px;
    width: 20px;
    height: 20px;
}
.bl_hanyou .bl_snsList .el_hp::before{
    background-image: url("../img/icon/icon_hp.png");
}
.bl_hanyou .bl_snsList .el_fb::before{
    background-image: url("../img/icon/icon_fb.png");
}
.bl_hanyou .bl_snsList .el_x::before{
    background-image: url("../img/icon/icon_x.png");
}
.bl_hanyou .bl_snsList .el_insta::before{
    background-image: url("../img/icon/icon_insta.png");
}
.bl_hanyou .el_btn{
    background-color: #ffffff;
    border: solid 1px #3871b8;
    color: #3871b8;
    font-size: 16px;
    font-weight: bold;
    height: 56px;
    line-height: 56px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    width: 300px;
}
.bl_hanyou .el_btn::after{
    border-bottom: solid 1px #3871b8;
    border-right: solid 1px #3871b8;
    content: '';
    display: block;
    height: 7px;
    position: absolute;
    right: 14px;
    right: 16px;
    top: 25px;
    transform: rotate(-45deg);
    transition: all .25s ease-in-out;
    width: 7px;
}
.bl_hanyou .el_btn:hover{
    background-color: #3871b8;
    border: solid 1px #3871b8;
    color: #ffffff;
    opacity: 1;
}
.bl_hanyou .el_btn:hover::after{
    border-bottom: solid 1px #fff;
    border-right: solid 1px #fff;
}

