/*汎用性*/
.dib{display:inline-block;}

.l-sidebar h2 {
	border-bottom: 4px solid #8accaf;
	border-image: linear-gradient(to right, #8accaf 0%, #c5ffe6 100%);
	border-image-slice: 1;
	padding-bottom: 5px;
	margin-bottom: 5px;
	font-size: 130%;
	color: #8accaf;
}
.l-sidebar ul li a {
	display: block;
	position: relative;
	padding: 5px 5px 5px 15px;
}
.l-sidebar ul li a:before {
	content: "▲";
	color: #8accaf;
	position: absolute;
	left: 0;
	display: inline-block;
	transform: rotate(90deg) translateX(1px);
	font-size: 80%;
}
.content {
	padding: 10px;
}
.content h2 {
	background: linear-gradient(to right, #8accaf 0%, #c5ffe6 100%);
	background: #42548f;
	color: #fff !important;
	font-size: 135%;
	margin: 30px -10px 0 !important;
	padding: 10px;
	border-radius: 5px;
	line-height: 1.2em;
}
h3.supervision_article,
.content h3 {
	border-bottom: 4px solid #8accaf;
	border-image: linear-gradient(to right, #8accaf 0%, #c5ffe6 100%);
	border-image-slice: 1;
	font-size: 130%;
	line-height: 1.2em;
	padding-bottom: 5px;
	margin-bottom: 5px;
}
.content h4 {
	border-bottom: 1px solid #8accaf;
/*
	border-image: linear-gradient(to right, #8accaf 0%, #c5ffe6 100%);
	border-image-slice: 1;
*/
	font-size: 120%;
	line-height: 1.2em;
	padding-bottom: 5px;
	margin-bottom: 5px;
	color: #8accaf !important;
}
.content h5 {
	color: #8accaf !important;
	font-size: 115%;
	line-height: 1.2em;
	margin: 20px 0 -15px;
	padding: 0;
}
.content h6 {
	color: #8accaf !important;
	font-size: 110%;
	line-height: 1.2em;
	margin: 20px 0 -15px;
	padding: 0;
}
h1.heading {
	border-bottom: 4px solid #8accaf;
/*
	border-image: linear-gradient(to right, #8accaf 0%, #c5ffe6 100%);
*/
	border-image-slice: 1;
	margin: 0 -20px 15px;
	padding: 0 20px;
}

.breadcrumb {
	background: #8accaf;
	color: #fff;
	box-shadow: rgba(20,20,40,0.5) 0 3px 7px;
}
.breadcrumb a {
	color: #fff;
}
.breadcrumb__list li:before {
	color: #fff;
}
.breadcrumb__list li:after {
	border-color: #fff;
}
@media only screen and (min-width: 768px) {
	nav.globalNavi {
		margin-left: auto;
		flex-shrink: 0;
		width: 700px;
		align-items: right;
	}
	nav.globalNavi ul {
		float: right;
	}
	nav.sublNavi {
		display: none;
	}
	h1.heading {
		margin-bottom: 20px;
	}
}

.content table { font-size: 1.4rem; line-height:1.4;}
.content table th {
	background: #8accaf !important;
}
.content table thead td {
	background: #8accaf !important;
}
.content table .th_color_lblue th{background: #42548f !important;}
.content table tr.tc td,
.content table tr.tc th,
.content table.tc td,
.content table.tc th {
	text-align: center;
}
.content table tr:nth-child(even) td {
    background-color: #fcfcfc;
}

body,
.l-wrapper,
.l-main {
	overflow-x: hidden !important;
}

.scroll {
	overflow: auto;
	white-space: nowrap;
	width: 100%;
}
.scroll.wrap {
	white-space: normal;
}
.scroll.js-scrollable{overflow-y: hidden !important;}
.scroll::-webkit-scrollbar{
	height: 15px;
}
.scroll::-webkit-scrollbar-track{
	background: #f1f1f1;
}
.scroll::-webkit-scrollbar-thumb{
	background: #8accaf;
}
.scroll table {
	margin: 0 !important;
	table-layout: fixed;
}
.pageContents .scroll.normal table,
.postContents .scroll.normal table,
.scroll.normal table {
	table-layout: auto !important;
}
.tc {
	text-align: center;
}
.c_red,
.red {
	color: #d22;
}
.text_blue {
	color: #269;
}
.text_gray {
	color: #777;
}
.font_bold {
	font-weight: bold;
}
.m_top50 {
	margin-top: 50px !important;
}
.scroll.rank tbody tr th {
	white-space: nowrap;
}
@media only screen and (min-width: 768px) {
	.scroll {
		white-space: normal;
	}
}
.scroll table tbody td {
	min-width: 180px;
}
.scroll.rank table thead td,
.scroll.rank table thead th { position: sticky; top: 0; z-index: 1;}
.scroll.rank table tfoot th, .scroll.rank table tfoot td{ position: sticky; bottom: 0 !important; top: auto !important; z-index: 1;}
.scroll.rank table thead th:first-child,
.scroll.rank table tbody th,
.scroll table tbody th:first-child,
.scroll table thead th:first-child,
.scroll.rank table tfoot th{ position: sticky; left: 0 !important; z-index: 2;}
.scroll.rank table thead {position:relative; z-index:3;}
.scroll.rank table thead tr th:first-child{position: sticky; left: 0; top: 0; z-index:4;}
a.afbtn {display:inline-block;background:#07a;color:#fff !important;border-radius:5px;text-align:center;text-decoration:none;padding:10px 15px;}
.scroll.rank.smt-lock table tbody tr th:first-child {
	white-space: nowrap !important;
	width: 120px !important;
}
.scroll.rank table thead td a:after,
.scroll.rank table thead th a:after {
	white-space: pre;
	content: "\A\25b6公式サイトはこちら";
	font-weight: normal;
	font-size: 13px;
	color: #fff;
}
.scroll table th.no-sticky,
.scroll table th.normal { position: static !important;}

@media only screen and (max-width: 736px) {
/*	.scroll.rank {max-height: 580px;} */
	.scroll.rank table th:first-child { width: 100px !important; }
	.scroll.rank table td { white-space: normal !important; }
	.scroll.rank.smt-lock {max-height: 540px;}
	.scroll.rank.smt-lock table td { padding: 5px; }
	.scroll.rank.smt-lock table thead th { position: sticky; top: 0; z-index: 2; }
/*
	.scroll.rank.smt-foot-lock table tbody tr:last-child td,
	.scroll.rank.smt-foot-lock table tr:last-child th { position: sticky; bottom: 0; z-index: 2; }
	.scroll.rank.smt-foot-lock table tr:last-child th:first-child { position: sticky; left: 0;  bottom: 0; z-index: 4; }
*/
	.smt-scroll{
		overflow: auto;
		width: 100%;
	}
	.smt-scroll::-webkit-scrollbar {
		height: 15px;
	}
	.smt-scroll::-webkit-scrollbar-track {
		background: #f1f1f1;
	}
	.smt-scroll::-webkit-scrollbar-thumb {
		background: #c5ffe6;
	}
}

/* ボタン */
.af-button > span,
.ib {
	display: inline-block;
	vertical-align: middle;
}
.af-button {
	font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", osaka, sans-serif !important;
	display: inline-block;
	box-sizing: border-box;
	width: 46%;
	height: 80px;
	padding: 0 5px;
	margin: 1.5%;
	background: #8ACCAF;
	background: linear-gradient(175deg,  #c5ffe6 0%,#3c7e61 80%);
	color: #fff !important;
	font-weight: bold;
	border-radius: 45px;
	font-size: 13px !important;
	line-height: 1.2em;
	border: 2px solid #222;
	box-shadow: #fff 1px 1px 3px inset, rgba(0,0,0,0.6) -1px -1px 4px inset, rgba(0,0,0,0.5) 0 0 10px;
	text-shadow: rgba(0,0,0,0.7) -1px -1px 0;
	text-align: center;
	text-decoration: none;
}
.af-button:after {
	content: "";
	display: inline-block;
	width: 0;
	height: 100%;
	vertical-align: middle;
}
.af-button > span{
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
	line-height: 1.2em;
}
.af-button.gray,
.af-button.back {
	background: #999;
	border-color: #555;
	box-shadow: #eee 1px 1px 2px inset;
}
.af-button.wide {
	width: 100%;
	margin: 1.5% 0;
}
.af-button.maxw300 {
    width: 100%;
	max-width: 300px;
}
.af-button.w80,
.af-button.wide.w80 {
	width: 80% !important;
}
.af-button:hover {
	border-width: 1px 3px 3px 1px;
}
.af-button:active{
	border-width: 3px 1px 1px 3px;
}
.af-button.blue {
	background: #327fd2;
	background: -moz-linear-gradient(-5deg,  #e8f8ff 0%, #327fd2 80%);
	background: -webkit-linear-gradient(-5deg,  #e8f8ff 0%,#327fd2 80%);
	background: linear-gradient(175deg,  #e8f8ff 0%,#327fd2 80%);
}
.af-button.yellow {
	background: #990;
	background: -moz-linear-gradient(-5deg,  #ee5 0%, #990 80%);
	background: -webkit-linear-gradient(-5deg,  #ee5 0%,#990 80%);
	background: linear-gradient(175deg,  #ee5 0%,#990 80%);
}

.af-button.green {
	background: #298f28;
	background: -moz-linear-gradient(180deg,  #c2f4ab 0%, #298f28 100%);
	background: -webkit-linear-gradient(180deg,  #c2f4ab 0%,#298f28 100%);
	background: linear-gradient(180deg,  #c2f4ab 0%,#298f28 100%);
	text-shadow: rgba(0,0,0,0.7) -1px -1px 0;
}
.af-button.gray {
	background: #999;
	background: -moz-linear-gradient(-10deg,  #ccc 0%, #777 80%);
	background: -webkit-linear-gradient(-10deg,  #ccc 0%,#777 80%);
	background: linear-gradient(170deg,  #ccc 0%,#777 80%);
}
.af-button.pink {
	background: #f77;
	background: -moz-linear-gradient(-10deg,  #faa 0%, #f77 80%);
	background: -webkit-linear-gradient(-100deg, #faa 0%,#f77 80%);
	background: linear-gradient(170deg, #faa 0%,#f77 80%);
}
.af-button.pink.deep {
	border-width: 3px;
	background: linear-gradient(175deg, #f88 0%,#e55 80%);
}
.af-button.pink.light {
	border-width: 3px;
	background: #f99;
	background: linear-gradient(175deg, #fcc 0%,#f99 80%);
}

.af-button.red {
	background: #d43;
	background: linear-gradient(175deg,  #faa 0%,#c21 80%);
	padding-left: 15px;
	animation: 2s red_flash infinite linear;
}
.af-button.orange {
	background: #f39800;
	background: -moz-linear-gradient(-5deg,  #ffd099 0%, #f39800 80%);
	background: -webkit-linear-gradient(-5deg,  #ffd099 0%,#f39800 80%);
	background: linear-gradient(175deg,  #ffd099 0%,#f39800 80%);
	padding-left: 15px;
	animation: 2s red_flash infinite linear;
	padding: 2px 15px;
}
.af-button.navyblue {
	background: #8accaf;
	background: linear-gradient(175deg, #136 0% ,#8accaf 80%);
	padding-left: 15px;
	animation: 2s red_flash infinite linear;
	padding: 2px 15px;
	box-shadow: rgba(255,255,255,0.6) 1px 1px 1px inset, rgba(0,0,0,0.6) -1px -1px 4px inset, rgba(0,0,0,0.5) 0 0 10px;
}
.af-button.orange span.ib:before {
	content: "";
	display: none;
	margin-left: 0;
}

@keyframes check-roll {
	0% {
		transform: rotateZ(10deg);
		text-shadow: #fff 0 0 3px, #fff 0 0 5px, #fff 0 0 7px, #fff 0 0 10px, #fff 0 0 15px;
	}
	50% {
		transform: rotateZ(-10deg);
		text-shadow: 0;
	}
	100% {
		transform: rotateZ(10deg);
	}

}
.af-button.arrow > span {
	display: inline-block;
	position: relative;
	max-width: 75% !important;
}
.af-button.arrow span {
	vertical-align: middle;
	display: inline-block;
}
.af-button.arrow > span:before {
	content: ">>";
	color: #ff8;
	display: inline-block;
	position: absolute;
	transform: translate(-100%, -50%);
	left: 0;
	top: 50%;
	white-space: nowrap;
	font-size: 150%;
	font-weight: normal;
	vertical-align: middle;
	animation: 1s arrow-move-l infinite ease-in-out;
}
.af-button.arrow > span:after {
	content: "<<";
	color: #ff8;
	display: inline-block;
	position:  absolute;
	transform: translate(100%, -50%);
	right: 0;
	top: 50%;
	white-space: nowrap;
	font-size: 150%;
	font-weight: normal;
	vertical-align: middle;
	animation: 1s arrow-move-r infinite ease-in-out;
}
@keyframes arrow-move-l {
	0%{
		color: #ff8;
		letter-spacing: 50px;
		opacity: 0;
	}
	40% {
		opacity: 1;
	}
	80%{
		letter-spacing: 0;
		opacity: 1;
	}
	100%{
		color: #fff;
		opacity: 0;
	}
}
@keyframes arrow-move-r {
	0%{
		color: #ff8;
		right: -50px;
		letter-spacing: 50px;
		opacity: 0;
	}
	40% {
		opacity: 1;
	}
	80%{
		right: 0;
		letter-spacing: 0;
		opacity: 1;
	}
	100%{
		color: #fff;
		opacity: 0;
	}
}
.finger {
	position: relative;
}
.finger:before {
	content: "";
	display: block;
	position: absolute;
	transform: translateY(-50%);
	background: url(./images/finger.png) no-repeat center center;
	background-size: 100% 100% !important;
	margin-right: 0;
	width: 35px;
	height: 45px;
	right: -10px;
	bottom: -60px;;
	transform: rotate(-15deg) translate(-20%,-80%);
	animation: 3s finger infinite linear;
	z-index: 3;
}
@keyframes finger {
	0%{
		transform: rotate(-15deg) translate(-20%,-80%) ;		
	}
	2%{
		transform: rotate(-35deg) translate(-20%,-80%) ;		
	}
	7%{
		transform: rotate(-15deg) translate(-20%,-80%) ;		
	}
	9%{
		transform: rotate(-35deg) translate(-20%,-80%) ;		
	}
	14%{
		transform: rotate(-15deg) translate(-20%,-80%) ;		
	}
}
.af-button.flash {
	animation: 3s text-flash infinite linear;
}
@keyframes text-flash {
	0%{
		text-shadow: #fff 0 0 2px, #fff 0 0 5px, #fff 0 0 8px, #fff 0 0 12px, #fff 0 0 18px, #fff 0 0 30px;		
	}
	3%{
		text-shadow: none;		
	}
	5%{
		text-shadow: #fff 0 0 2px, #fff 0 0 5px, #fff 0 0 8px, #fff 0 0 12px, #fff 0 0 18px, #fff 0 0 30px;		
	}
	20%{
		text-shadow: none;		
	}
}
.shiny,
.af-button.shiny,
.l-main .content .af-button.shiny {
	position: relative;
	display: block !important;
	overflow: hidden !important;
}
.af-button.shiny:before {
	content: "";
	display: block;
	position: absolute;
	background: linear-gradient(to right, transparent 0%, rgba(255,255,255,0.5) 88%, #fff 98%, transparent 100%);
	transform: skew(30deg);
	background-size: 100% 100% !important;
	margin-right: 0;
	width: 100%;
	height: 100%;
	left: -20px;
	top: 0;
	animation: 5s shiny infinite linear;
	z-index: 3;
}
@keyframes shiny {
	0%{
		left: -105%;	
	}
	8%{
		left: 0%;		
	}
	15%{
		left: 105%;		
	}
	100%{
		left: 105%;		
	}
}
.af-button.small {
	height: 50px;
}
.af-button.square {
	border-radius: 5px !important;
}
.af-button.small > span {
	font-size: 14px;
	line-height: 1.2em;
}
.af-button.txt_sp_small > span {
	font-size: 12px;
}
.af-button.triangle > span {
	width: 100%;
}
.af-button.triangle > span:before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border: solid;
	border-color: transparent transparent transparent #fff;
	border-width: 10px 0 10px 17px;
	margin-right: 5px;
	vertical-align: middle;
	animation: 1s triangle-roll infinite linear;
}
.af-button.triangle.small > span:before {
	border-width: 7px 0 7px 10px;
}
@keyframes triangle-roll {
	0% {
		transform: rotateX(-90deg);
		border-left-color: #fff;
	}
	50% {
		transform: rotateX(0deg);
		border-left-color: #ffe;
	}
	100% {
		transform: rotateX(90deg);
		border-left-color: #bb7;
	}
}
.af-button.triangle > span > span {
	max-width: calc(100% - 23px);
}
.af-button.girl,
.af-button.girl2 {
	padding-right: 90px !important;
	padding-left: 5px;
	position: relative;
	height: 85px;
	border-radius: 50px;
}
.popup-sim-btn.girl:before,
.popup-sim-btn.girl2:before,
.af-button.girl:before,
.af-button.girl2:before {
	content: "";
	display: block !important;
	position: absolute;
	transform: translateY(-100%);
	background: url(./images/girl.png) no-repeat center center;
	background-size: 100% 100% !important;
	margin-right: 0;
	width: 120px;
	height: 140px;
	right: 20px;
	top: 100%;
	z-index: 3;
	filter: drop-shadow(rgba(0,0,0,0.7) 1px 1px 3px);
	animation: none !important;
}
.popup-sim-btn.girl:before,
.af-button.girl2:before {
	transform: translateY(-100%);
	background: url(./images/girl2.png) no-repeat center center;
	background-size: 100% 100% !important;
	width: 92px;
	height: 140px;
	right: 20px;
}
.popup-sim-btn.girl:before {
	width: 80px;
	height: 105px;
}
.af-button.heart_roll > span:before,
.af-button.heart > span:before {
	content: "\2665";
	display: inline-block !important;
	vertical-align: middle;
	font-size: 200%;
	color: #fff;
}
.af-button.heart_roll > span:before {
	animation: 1.5s heart_roll infinite linear;
}
.af-button.heart_roll > span > span,
.af-button.heart > span > span {
	max-width: calc(100% - 40px);
}
@keyframes heart_roll {
	0%{
		transform: perspective(300px) rotateZ(20deg) rotateY(0deg);
	}
	50%{
		transform: perspective(300px) rotateZ(20deg) rotateY(180deg);
	}
	100%{
		transform: perspective(300px) rotateZ(20deg) rotateY(360deg);
	}
}
.af-button.flat {
	border: 0 !important;
	box-shadow: rgba(0,0,0,0.5) 2px 2px 6px !important;
}
.af-button.flat.blue {
	background: linear-gradient(-90deg,  #e8f8ff 0%,#327fd2 80%);
}
.af-button.flat.yellow {
	background: linear-gradient(-90deg,  #ee5 0%,#990 80%);
}
.af-button.flat.green {
	background: linear-gradient(-90deg,  #c2f4ab 0%,#298f28 100%);
	text-shadow: rgba(0,0,0,0.7) -1px -1px 0;
}
.af-button.flat.gray {
	background: linear-gradient(-90deg,  #ccc 0%,#777 80%);
}
.af-button.flat.pink {
	background: linear-gradient(-90deg, #faa 0%,#f77 80%);
}
.af-button.flat.pink.deep {
	border-width: 0;
	background: linear-gradient(-90deg, #f88 0%,#e55 80%);
}
.af-button.flat.pink.light {
	border-width: 0;
	background: linear-gradient(-90deg, #fcc 0%,#f99 80%);
}
.af-button.flat.red {
	background: linear-gradient(-90deg,  #faa 0%,#c21 80%);
}
.af-button.flat.orange {
	background: linear-gradient(-90deg,  #ffd099 0%,#f39800 80%);
}
.af-button.flat.navyblue {
	background: linear-gradient(-90deg, #136 0% ,#8accaf 80%);
}
/* ▼▼▼▼▼ PCでの表示 ▼▼▼▼▼ */
@media only screen and (min-width: 768px) {
	.af-button {
		font-size: 18px !important;
		line-height: 1.2em;
		height: 85px;
	}
	.af-button > span{
		font-size: 21px;
		line-height: 1.2em;
	}
	.finger:before {
		width: 40px;
		height: 50px;
		right: -15px;
		bottom: -70px;
	}
	.af-button.girl,
	.af-button.girl2 {
		padding-right: 70px !important;
	}
	.af-button.small {
		height: 50px;
	}
}
@media only screen and (max-width: 600px) {
	.af-button.txt_sp_small{    padding: 2px 10px;}
	
	.af-button.girl,
	.af-button.girl2 {
		border-radius: 50px 50px 15px 50px;
	}
	.af-button.girl:before,
	.af-button.girl2:before {
		right: 0;
	}

}
td.center,
th.center {
	text-align: center;
}
td.maru {
	background-image: url(./images/circle.png) !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: auto 90px !important;
	height: 110px;
	text-shadow: #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px;
}
td.maru.double {
	background-image: url(./images/circle-double.png) !important;
	animation: 4s text-flash2 infinite linear;
}
td.maru.triangle {
	background-image: url(./images/triangle.png) !important;
}
@media only screen and (max-width: 768px) {
	td.maru {
		background-size: auto 65px !important;
		height: 75px;
		line-height: 1.4em;
	}
	.scroll.rank table td ul li {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
}
@keyframes text-flash2 {
	0%{
		text-shadow: #ff8 0 0 2px, #ff8 0 0 5px, #ff8 0 0 8px, #ff8 0 0 12px, #ff8 0 0 18px, #ff8 0 0 30px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px;
		color: #fff;
	}
	3%{
		text-shadow: #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px;
		color: #000;
	}
	5%{
		text-shadow: #ff8 0 0 2px, #ff8 0 0 5px, #ff8 0 0 8px, #ff8 0 0 12px, #ff8 0 0 18px, #ff8 0 0 30px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px;
		color: #fff;
	}
	20%{
		text-shadow: #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 1px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px, #fff 0 0 2px;
		color: #000;
	}
}
.size110 {
	font-size: 110%;
	line-height: 1.8em;
}
.size120 {
	font-size: 120%;
	line-height: 1.8em;
}
.size130 {
	font-size: 130%;
	line-height: 1.8em;
}
.size140 {
	font-size: 140%;
	line-height: 1.8em;
}
.size150 {
	font-size: 150%;
	line-height: 1.8em;
}
.size160 {
	font-size: 160%;
	line-height: 1.8em;
}
.size170 {
	font-size: 170%;
	line-height: 1.8em;
}
.size180 {
	font-size: 180%;
	line-height: 1.8em;
}
.size190 {
	font-size: 190%;
	line-height: 1.8em;
}
.size200 {
	font-size: 200%;
	line-height: 1.8em;
}
.bold {
	font-weight: bold;
}
td .small {
	font-size: 14px;
	line-height: 1.8em;
}
td p {
	margin: 0 !important;
}
.red {
	color: #f00;
}
.blue {
	color: #08f;
}
.green {
	color: #080;
}
td ul li {
	color: inherit !important;
}

.marker_red {
	background: linear-gradient(transparent 70%, #ffa4a4 30%);
	font-weight: bold;
	padding: 0 5px 1px;
}
.marker_pink {
	background: linear-gradient(transparent 70%, #ffd8d8 30%);
	font-weight: bold;
	padding: 0 5px 1px;
}
.marker_green {
	background: linear-gradient(transparent 70%, #b0ffce 30%);
	font-weight: bold;
	padding: 0 5px 1px;
}
.marker_orange {
	background: linear-gradient(transparent 70%, #fceca8 30%);
	font-weight: bold;
	padding: 0 5px 1px;
}
.marker_yellow {
	background: linear-gradient(transparent 70%, #ffffaa 30%);
	font-weight: bold;
	padding: 0 5px 1px;
}
.marker_blue {
	background: linear-gradient(transparent 70%, #afdfff 30%);
	font-weight: bold;
	padding: 0 5px 1px;
}
code {
	background: #f0f0f0;
	border: 1px solid #aaa;
	border-top-width: 2px;
	padding: 15px;
	position: relative;
	display: block;
	margin: 60px 0 10px !important;
}
code:before {
	content: "【コード】";
	position: absolute;
	background: #aaa;
	padding: 4px 15px;
	top: -26px;
	left: -1px;
	font-weight: bold;
	line-height: 1.1em;
	color: #fff;
	border-radius: 6px 6px 0 0;
}
code + br {
	display: none;
}
code + br + .adviser-single {
	margin-top: 0;
}
code[data-title]:before {
	content: attr(data-title);
}
a .eyecatch__cat {
	display: inline-block;
	color: #fff;
	padding:7.5px 10px;
}
a .eyecatch__cat{
	display:block;

	color:#ffffff;
	font-size:0.9rem;
	transition: .15s;
	line-height:1.35;
}
a .eyecatch__cat::before{
	font-family: "icomoon";
	content: "\e938";
	margin-right: 5px;
}
a:hover .eyecatch__link img {
	transform: scale(1.2,1.2);
	transition: all 1s ease-out;
}
.eyecatch__link:before {
	content: "";
	background: rgba(0,0,0,0.5);
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transition: all 0.5s linear;
	opacity: 0;
	z-index: 1;
}
.eyecatch__link:after {
	content: "詳しく見る";
	position: absolute;
	left: 0;
	width: 100%;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0;
	z-index: 2;
	font-weight: bold;
	font-size: 22px;
	color: #fff;
	transition: all 0.5s linear;
	text-shadow: #000 0 0 3px, #000 0 0 15px;
}
a:hover .eyecatch__link:before {
	opacity: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transition: all 0.2s linear;
}
a:hover .eyecatch__link:after {
	opacity: 1;
	transition: all 0.2s linear;
}
.archive__item {
	padding-bottom: 0;
}
.archive__item a {
	display: block;
}
.archive__item a h2 {
	display: block;
	color: #48a;
}
.archive__item .eyecatch {
	border-radius: 5px;
}
.container.divider {
	margin-top: 3%;
	margin-bottom: 0;
}
.l-wrapper {
	margin-top: 3%;
}
.container,
.l-wrapper {
	max-width: 900px;
}
.l-header {
	box-shadow: rgba(20,20,40,0.5) 0 3px 10px 3px;
	border-bottom: 4px solid #8accaf;
}
.l-footer {
	box-shadow: rgba(0,0,0,0.4) 0 -3px 7px;
	color: #444;
}
.l-footer .container * {
	color: #444;
}
.l-footer .wider .bottomFooter{
	background: #8accaf;
	background: linear-gradient(to bottom, #c5ffe6 0%, #8accaf 25%);
}
.bottomFooter__copyright {
	color: #fff !important;
}
.bottomFooter__topBtn {
	border: 1px solid rgba(255,255,255,0.6);
}
.l-footer a {
	color: #fff !important;
}
.l-header .menu-item a {
	color: #8accaf !important;
}
.l-header .menu-item a:hover {
	color: #047 !important;
}
header label.menuBtn__link.menuBtn__link-text.icon-menu:hover:before {
	color: #c5ffe6;
}
.content ul li:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: #d22;
	border-radius: 50%;
	margin: 0;
	top: 0px;
	left: 0;
	vertical-align: middle;
}
@media only screen and (min-width: 768px) {
	a .eyecatch__cat{
		font-size: 1rem;
	}
}
@media only screen and (max-width: 768px) {
	.l-wrapper {
		margin: 10px;
	}
	.l-main.l-main-wide {
		padding: 10px;
	}
	.content ul li:before {
		top: 1px;
	}
}

.tag_list,
.su-box {
	border: 2px solid #8accaf;
	background: #f2f8f2;
	padding: 20px;
	margin: 20px 0 40px !important;
	border-radius: 10px;
}
.tag_list:before,
.su-box[data-title]:before,
.su-box p.midasi {
	content: attr(data-title);
	display: block;
	margin: -20px -20px 15px !important;
	background: linear-gradient(to right, #8accaf 0%, #c5ffe6 100%);
	font-size: 120%;
	line-height: 1.3em;
	color: #fff;
	padding: 5px 20px 8px;
	font-weight: bold;
	border-radius: 8px 8px 0 0;
}
.tag_list:before {
	content: "チェックポイント！";
}
.tag_list,
.su-box ul {
	margin: 0;
}
.tag_list > li,
.su-box ul > li {
	list-style: none;
	padding-left: 24px;
	line-height: 1.3em;
	margin: 10px 0 0;
}
.tag_list > i:first-child,
.su-box ul > i:first-child {
	margin-top: 0;
}

.su-box p:last-child {
	margin-bottom: 0;
}
table ul li {
	line-height: 1.2em !important;
}
table.contactTable th {
	color: #fff !important;
	padding: 5px 10px !important;
}
.su-box.fill {
	border: 0 !important;
	box-shadow: rgba(0,0,0,0.5) 1px 1px 3px;
}
.su-box.fill[data-title]:before {
	border-radius: 8px 8px 0 0;
}
.su-box.red {
	border-color: #d44;
	background: #fee;
	color: #000;
}
.su-box.red p.midasi,
.su-box[data-title].red:before {
	background-color: #d44 !important;
	background: linear-gradient(to right, #d44 0%, #fbb 100%);
}
.su-box.blue {
	border-color: #58e;
	background: #e8ebfd;
	color: #000;
}
.su-box.blue p.midasi,
.su-box[data-title].blue:before {
	background-color: #58e !important;
	background: linear-gradient(to right, #58e 0%, #c5ffe6 100%);
}
.su-box.pink {
	border-color: #f88;
	background: #fee;
	color: #000;

}
.su-box.pink p.midasi,
.su-box[data-title].pink:before {
	background-color: #f88 !important;
	background: linear-gradient(to right, #f88 0%, #fdd 100%);

}
.su-box.green {
	border-color: #484;
	background: #e0ffe0;
	color: #000;
}
.su-box.green p.midasi,
.su-box[data-title].green:before {
	background-color: #484 !important;
	background: linear-gradient(to right, #484 0%, #8c8 100%);
}
.su-box.orange {
	border-color: #f92;
	background: #fff8f0;
	color: #000;

}
.su-box.orange p.midasi,
.su-box[data-title].orange:before {
	background-color: #f92 !important;
	background: linear-gradient(to right, #f92 0%, #fb8 100%);
}

.tag_list:before {
	content: "チェックポイント！";
}
.tag_list,
.su-box ul {
	margin: 0;
}
.tag_list > li,
.su-box ul > li {
	list-style: none;
	padding-left: 24px;
	line-height: 1.3em;
	margin: 10px 0 0;
}
.tag_list > i:first-child,
.su-box ul > i:first-child {
	margin-top: 0;
}

.su-box p:last-child {
	margin-bottom: 0;
}


/* 目次用CSS */
div.outline {
	border: 0 !important;
/*
	box-shadow: rgba(0,0,0,0.5) 2px 2px 7px;
*/
	background: #f0f8ff !important;
	display: block !important;
	border-radius: 8px;
	position: relative;
	box-shadow: rgba(0,0,0,0.5) 2px 2px 4px !important;
}
div.outline .outline__title {
	background: #f0f8ff;
	display: block !important;
	margin: -7px -10px -5px;
	text-align: center;
	padding: 0 2px;
	font-weight: bold;
	color: #8accaf;
	border-radius: 4px;
}
div.outline .outline__list {
	background: #f0f8ff !important;
	margin-left: 0 !important;
	border-radius: 5px;
}
div.outline > .outline__list {
	box-shadow: rgba(0,0,0,0.5) 1px 1px 2px inset !important;
	background: #fff !important;
}
#outline__toggle:checked + label + .outline__list {
	padding: 10px 0 !important;
	background: #fff !important;
}
div.outline label.outline__switch {
	position: absolute;
	right: 20px;
	top: 15px;
	width: 80px !important;
	max-width: 80px !important;
	padding: 0 !important;
	margin: 0 !important;
}
div.outline label.outline__switch:before {
	max-width: 80px !important;
	display: block !important;
	padding: 2px;
	text-align: center;
	background: #fff;
	box-shadow: rgba(0,0,0,0.5) -1px -1px 4px inset;
}
div.outline > ul > li > a > .outline__number {
	background: #42548f;
	color: #fff;
	font-weight: bold;
}
div.outline > ul > li > ul.outline__list {
	background: #fff !important;
}
div.outline > ul > li > ul > li > a > .outline__number {
	background: rgb(217, 228, 248);
	border: 1px solid #42548f;
	line-height: 1.2em;
	color: #8accaf;
}
div.outline .outline__number {
	border-radius: 4px;
}
.main-image img {
	max-width: 100%;
	/* width: 100%; */
	height: auto;
	display: block;
	margin: auto;
	border: 4px solid #fff;
	box-shadow: rgba(0,0,0,0.4) 1px 1px 3px;
}
.main-image {
	margin: 0 0 20px !important;
	padding: 0;
}
@media only screen and (max-width: 768px) {
	div.outline label.outline__switch:before {
		padding: 0 1px;
	}
	.main-image {
		padding: 0;
		margin: auto -10px 15px;
	}
	.main-image img {
		border-width: 2px;
	}
}
blockquote {
	background: #f2f8f2 !important;
	box-shadow: rgba(0,0,0,0.3) 1px 1px 3px inset;
	border-radius: 5px;
}
blockquote cite {
	display: block;
	text-align: right;
}
blockquote:before {
	color: #bce !important;
}

/* レビューBOX ＆ 埋め込みFAQ */
.faq-box {
	position: relative;
	background: #f2f8f2;
	padding: 15px 15px 20px;
	overflow-x: auto;
	margin: 0 0 40px!important;
	box-shadow: rgba(0,0,0,0.4) 1px 1px 3px;
}
.faq-box {
	margin-top: 20px !important;
}
p.faq-title + .faq-box {
	border-radius: 0 0 8px 8px;
	margin-top: 0 !important;
}
p.faq-title {
	margin: 30px 0 1px !important;
	padding: 10px 15px;
	background: linear-gradient(to right, #8accaf 0%, #c5ffe6 100%);
	font-weight: bold;
	font-size: 18px;
	line-height: 1.3em;
	color: #fff;
	border-radius: 8px 8px 0 0;
	box-shadow: rgba(0,0,0,0.4) 1px 1px 3px;
}
.faq-box dl dt {
	padding-left: 55px;
	position: relative;
	background: #c5ffe6;
	line-height: 1.4em;
	color: #fff;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}
.faq-box.close dl dt {
	cursor: pointer;
	padding-right: 40px;
	border-radius: 5px;
	transition: all 0.5s linear;
}
.faq-box.close dl dt:after {
	content: "＋";
	position: absolute;
	font-size: 30px;
	font-weight: bold;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.4s linear;
}
.faq-box.close dl dt.on {
	border-radius: 5px 5px 0 0;
	background: #8accaf;
}
.faq-box.close dl dt.on:after {
	content: "－";
}
.faq-box dl dt i,
.faq-box dl dt:before {
	content: "Q.";
	position: absolute;
	left: 10px;
	top: 8px;
	background: #fff;
	padding: 2px 10px;
	color: #8accaf;
	font-style: normal;
	font-weight: bold;
	color: #c00;
	border-radius: 5px;
	transition: all 0.5s linear;
}

.faq-box.close dl dt:hover {
	background: #8accaf;
	transition: all 0.2s linear;
}
.faq-box dl dt.on i,
.faq-box.close dl dt:hover i,
.faq-box dl dt.on:before,
.faq-box.close dl dt:hover:before {
	background-color: #ff8;
	transition: all 0.2s linear;
}
.faq-box dl dd {
	background: #fff;
	border: solid #c5ffe6;
	border-width: 0 2px 2px;
	border-radius: 0 0 5px 5px;
}
.faq-box.close dl dd,
.faq-box dl dt.on + dd {
	border: solid #8accaf;
}
.faq-box dl dd > i,
.faq-box dl dd:before {
	content: "A. ";
	display: inline-block;
	background: #c5ffe6;
	padding: 2px 10px;
	color: #fff;
	border-radius: 5px;
	font-size: 120%;
	line-height: 1.2em;
	font-weight: bold;
	float: left !important;
	margin: 0 5px 0 -3px !important;
	transition: all 0.5s linear;
}
.faq-box dl dt.on + dd > i,
.faq-box dl dt.on + dd:before {
	background: #8accaf;
	transition: all 0.2s linear;
}
.faq-box dl dd > i + p {
	margin-top: 0 !important;
}
.faq-box dl dd ul {
	margin-left: 10px;
}
.faq-box.close dl dd {
	display: none;
}
.faq-box dl dt:before,
.faq-box dl dd:before {
	display: none !important;
}
@media only screen and (min-width: 600px) {
	p.review-title {
		font-size: 28px;
	}
	.review-box {
		padding: 5px;
	}
	.review-box ul {
		border-spacing: 10px;
	}
	.review-box ul li {
		width: 280px !important;
		font-size: 14px;
		padding: 15px;
	}
	.review-box ul li .head {
		margin: -15px -15px 10px;
		padding: 10px 15px;
	}
	.review-box ul li p.comment {
		font-size: 15px;
	}
	.review-box ul li p.value {
		font-size: 180%;
	}
}
@media only screen and (max-width: 740px) {
	.review-box {
		padding-bottom: 30px;
	}
	.faq-box {
		padding: 10px 10px 15px;
	}
	.review-box:before {
		content: "スライドで閲覧可 \25b6";
		display: block !important;
		font-weight: bold;
		color: #c5ffe6;
		position: absolute;
		left: 15px;
		bottom: 5px;
	}
	.review-box::-webkit-scrollbar {
		height: 7px;
	}
	.l-main.l-main-wide {
		padding-left: 0;
		padding-right: 0;
	}
}
.pageContents.u-shadow,
.postContents.u-shadow {
	box-shadow: rgba(0,0,0,0.5) 2px 2px 5px;
}

.archive .archive__item {
	padding: 15px;
	background: #f2f8f2;
	/* background: linear-gradient(to bottom, #f2f8f2 60%, #fff 80%); */
	border-radius: 5px;
	box-shadow: rgba(0,0,0,0.5) 0 1px 3px;
	transition: all 0.6s linear;
}
.archive .archive__item:hover {
	background: #f2ffff;
	transition: all 0.2s linear;
}
.archive__item {
	padding-bottom: 0;
}
.archive__item a {
	display: block;
}
.archive__item a h2 {
	display: block;
	color: #8accaf;
}
.archive .archive__item h2 {
	margin-bottom: 5px;
}
.archive .archive__item p.phrase {
	line-height: 1.2em;
	margin-bottom: 5px;
	text-align: justify;
	text-justify: inter-ideograph;
}
@media only screen and (max-width: 740px) {
	.archive .archive__item {
		padding: 2%;
	}
}

/* 業者Dtata表示 */
.spec-box {
	max-width: 840px;
	position: relative;
	margin: 45px auto 40px !important;
	box-sizing: border-box;
	max-width: 880px;
	padding: 0 30px 30px;
	background-color: #e8f0ff;
/*	background-image: linear-gradient(180deg, #dde 1px, transparent 1px);
	background-size: 100% 3.2em; */
	font-size: 13px;
	line-height: 1.8em;
	box-shadow: rgba(0,0,0,0.6) 1px 1px 5px;
	border-radius: 5px;
}
.spec-box:after {
	content: "";
	position: absolute;
	width: 60px;
	height: 90px;
	background: url(./images/clip.png) no-repeat center center;
	background-size: 100% 100%;
	top: -56px;
	right: 5px;
}
.spec-box > p.midasi {
	background: #8accaf;
	background: linear-gradient(180deg,#47a 0%,#c5ffe6 100%);
	background: #68d;
	padding: 10px 60px 10px 30px;
	margin: 0 -30px 15px;
	font-weight: bold;
	font-size: 24px;
	line-height: 1.3em;
	color: #fff;
	border-radius: 5px 5px 0 0;
}
.spec-box p.midasi a {
	color: #fff;
	display: block;
}
.spec-box p.midasi a:hover {
	color: #ff9;
}
.spec-head {
	overflow: hidden;
	font-size: 0;
}
.spec-head figure {
	position: relative;
	display: inline-block;	
	width: 300px;
	height: 0;
	padding-top: 250px;
	background: #fff;background: transparent !important;
	vertical-align: middle;
	overflow: hidden;
	box-shadow: #aaa 2px 2px 6px inset; box-shadow: none !important;
}
.spec-head figure img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	max-height: 100%;
	object-fit: cover;object-fit: contain !important;
}
.spec-head figure > p {
	position: absolute;
	margin: auto;
	left: 0;
	top: 50%;
	width: 100%;
	text-align: center;
	font-size: 48px;
	line-height: 1.1em;
	font-family:'Times New Roman', Times, serif;
	color: #777;
	transform: translateY(-50%);
	text-shadow: rgba(0,0,0,0.5) 0 0 15px;
}
/*
.spec-head ul {
	display: inline-block;
	box-sizing: border-box;
	padding: 0 10px 20px 20px;
	width: -webkit-calc( 100% - 320px );
	width: calc( 100% - 320px );
	margin-left: 20px;
	font-size: 16px;
	vertical-align: middle;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
}
.spec-head ul:before {
	content: "おすすめPOINT！";
	display: block;
	margin: 0 -10px 15px -20px;
	padding: 5px;
	background: #c5ffe6;
	text-align: center;
	color: #fff;
	font-weight: bold;
}
*/
.spec-head .point {
	display: inline-block;
	box-sizing: border-box;
	padding: 0 10px 20px 20px;
	width: -webkit-calc( 100% - 320px );
	width: calc( 100% - 320px );
	margin-left: 20px;
	font-size: 16px;
	vertical-align: middle;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
}
.spec-head .point ul {
	margin: 0;
	padding: 0;
}
.spec-head .point p.midasi {
	display: block;
	margin: 0 -10px 15px -20px;
	padding: 5px;
	background: #c5ffe6;
	text-align: center;
	color: #fff;
	font-size: 120%;
	line-height: 1.2em;
	font-weight: bold;
}
.spec-head ul li {
	line-height: 1.4em;
	margin: 10px 0 0 -5px;
	padding: 5px 5px 5px 27px;
	font-weight: bold;
	animation: 6s y-flash linear infinite;
	border-radius: 20px;
	list-style: none;
}
.spec-head ul li:nth-child(2) {
	animation-delay: 1s;
}
.spec-head ul li:nth-child(3) {
	animation-delay: 2s;
}
.spec-head ul li:first-child {
	margin-top: 0;
}
.spec-head ul li:before {
	content: "\2714";
	color: #d22 !important;
	background: transparent !important;
	display: inline-block;
	width: auto !important;
	height: auto !important;
	font-size: 270%;
	font-weight: bold;
	line-height: 1.1em;
	top: -12px;
	left: 0;
}
@keyframes y-flash {
	0% {
		background: #ff0;
	}
	10% {
		background: transparent;
	}
}
.spec-box table {
	margin-bottom: 15px;
	line-height: 1.3em;
}
table.spec-table tr th,
.spec-box table tr th {
	background: #c5ffe6 !important;
}
table.spec-table tr td,
.spec-box table tr td {
	background-color: #fff !important;
}
.spec-box table tr:not(:last-child) td {
	border-bottom: 1px solid #bbd0e0 ;
}
.spec-table img[src*="icon-"]{
	width: 32px;
	margin-left: 5px;
}
.spec-box .pre {
	white-space: pre;
}
.spec-box nav {
	text-align: center;
	margin-top: 15px;
}
.spec-box nav a {
	width: 100% !important;
	text-align: center;
	font-size: 24px !important;
}
.spec-box aside {
	position: relative;
	padding: 20px 15px;
	margin-top: 30px;
	font-size: 14px;
	vertical-align: middle;
	background: #fff;
/*	box-shadow: rgba(0,0,0,0.3) 2px 2px 5px inset;	*/
	border-radius: 0 8px 8px 8px;
}
.spec-box aside p.midasi { /* .spec-box aside:before */
	content: "Notice";
	position: absolute;
	box-sizing: border-box;
	height: 27px;
	top: -27px;
	left: 0;
	background: #e44;
	display: block;
	padding: 2px 40px;
	margin: 0;
	font-size: 110%;
	font-weight: bold;
	text-align: center;
	color: #fff;
	border-radius: 5px 5px 0 0;
/*	transform: translate(-50%,-50%);	*/
/*	box-shadow: rgba(0,0,0,0.5) 2px 2px 5px;	*/
}
@media only screen and (max-width: 640px) {
	.spec-box {
		padding: 0 20px 20px;
	}
	.spec-box > p.midasi {
		margin: 0 -20px 15px;
		padding: 10px 60px 10px 20px;
	}
	.spec-head figure {
		display: block;	
		max-width: 100%;
		margin: 0 auto 15px;
	}
	.smt2line .spec-head figure {
		display: inline-block;
		width: 45%;
		padding-top: 40%;
		margin: 0;
	}
	.smt2line .spec-head .point {
		display: inline-block;
		width: 53%;
		margin: 0 0 0 2%;
		font-size: 12px;
		line-height: 1.2em;
		padding: 0 5px 5px;
	}
	.smt2line .spec-head .point ul li {
		line-height: 1.2em;
		margin-top: 3px;
	}
	/*
	.spec-head ul {
		display: block;
		width: auto;
		margin-left: 0;
	}
	*/
	.spec-head .point {
		display: block;
		width: auto;
		margin-left: 0;
	}
	.spec-box nav a.afbtn {
		font-size: 18px !important;
	}
}
@media only screen and (max-width: 580px) {
	.spec-box {
		padding: 0 15px 15px;
	}
	.spec-box > p.midasi {
		margin: 0 -15px 15px;
		padding: 10px 50px 10px 15px;
	}
	.spec-box:after {
		width: 48px;
		height: 65px;
		top: -40px;
	}
	/* .spec-head ul { */
	.spec-head .point {
		padding: 0 10px 10px;
		margin: 10px 0 0;
		font-size: 14px;
	}
/*	.spec-head ul:before { */
	.spec-head .point p.midasi {
		margin-bottom: 8px;
	}
	.spec-head ul li {
		line-height: 1.4em;
		margin: 5px 0 0 -5px;
		padding: 2px 2px 2px 23px;
	}
	.branch_box nav a.afbtn > span {
		font-size: 15px !important;
	}
	.spec-box table {
		margin-top: 10px;
	}
	table.spec-table tr th,
	table.spec-table tr td,
	.spec-box table tr th,
	.spec-box table tr td {
		padding: 5px;
	}
}
@media only screen and (max-width: 400px) {
	.spec-box {
		padding: 0 10px 10px;
	}
	.spec-box > p.midasi {
		margin: 0 -10px 15px;
		padding: 10px;
	}
	.spec-head figure {
		width: 100%;
		padding-top: 83.3333%;
	}
	.spec-head figure > p {
		font-size: 15vw;
	}
}
.spec-table b,
.spec-table strong,
.spec-box b,
.spec-box strong {
	font-weight: bold;
	color: #e22;
}

/* ■■■■■ お問い合わせ（contact-form-7）CSS ■■■■■ */
.wpcf7-form p {
/*
	border-top: 1px solid #ddd;
*/
	margin: 0 !important;
	padding: 10px 0;
}
.wpcf7-form p label {
	display: block;
	background: #bce;
	padding: 7px;
	border-radius: 5px;
	font-weight: bold;
	color: #fff;
	box-shadow: rgba(0,0,0,0.6) 1px 1px 3px;
}
.wpcf7-form p:last-of-type,
.wpcf7-form p:first-of-type {
	border-top: 0;
}
.wpcf7-form p input[type="text"],
.wpcf7-form p input[type="email"],
.wpcf7-form textarea {
	border: 1px solid #ddd;
	background: #fff;
	width: 100%;
	padding: 5px;
	font-weight: normal;
	color: #000;
	box-shadow: rgba(0,0,0,0.5) 1px 1px 2px inset;
}
.wpcf7-form p input[type="text"]:focus,
.wpcf7-form p input[type="email"]:focus,
.wpcf7-form textarea:focus {
	background: #fffff2;
}
input.wpcf7-form-control.wpcf7-submit {
	box-sizing: border-box;
	width: 100%;
	max-width: 480px;
	margin: 10px auto;
	display: block;
	padding: 15px 20px;
	background: linear-gradient(180deg,#c5ffe6 0%,#3e4d7c 100%);
	border: 4px solid #8accaf;
	color: #fff;
	font-weight: bold;
	font-size: 21px;
	line-height: 1.3em;
	text-shadow: #8accaf -1px -1px 0;
	border-radius: 10px;
	cursor: pointer;
	box-shadow: #fff 0 -2px 4px inset;
}
@media only screen and (max-width: 740px) {
	input.wpcf7-form-control.wpcf7-submit {
		font-size: 16px;
	}
}
.eyecatch__cat {
	border-radius: 0 0 0 5px;
	border: solid rgba(255,255,255,0.6);
	border-width: 0 0 1px 1px;
	box-shadow: rgba(0,0,0,0.4) -1px 1px 3px;
}


/* アドバイザー関連 */
h1.heading {
	border-bottom: 5px solid #8accaf;
	padding-bottom: 5px;
} 
h1.heading small {
	display: inline-block;
	font-size: 13px;
	line-height: 1.3em;
}
.adviser_single {
	max-width: 840px;
	position: relative;
	margin: 30px auto 40px;
	box-sizing: border-box;
	max-width: 880px;/*
	border: 5px solid #c5ffe6;*/
	padding: 10px;
	background: #f2f8f2;
	font-size: 13px;
	line-height: 1.8em;
	box-shadow: rgba(0,0,0,0.5) 1px 1px 5px;
}

.adviser_single > p.h2,
.postContents .adviser_single > h2,
.adviser_single > h2 {
	border: 0 !important;
	background: #8accaf;
	background: -moz-linear-gradient(-45deg,  #8accaf 60%, #8accaf 60%, #f2f8f2 100%);
	background: -webkit-linear-gradient(-45deg,  #8accaf 60%,#8accaf 60%,#f2f8f2 100%);
	background: linear-gradient(135deg,  #8accaf 60%,#8accaf 60%,#f2f8f2 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8accaf', endColorstr='#f2f8f2',GradientType=1 );
	border-radius: 6px;
	color: #fff !important;
	margin: -5px !important;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.3em;
}
.adviser_single p.h3 {
	background: #8accaf;
	padding: 5px 10px;
	margin: 30px 0 15px ;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.2em;
	color: #fff !important;
	border-radius: 5px;
}
.adviser_single p.h3:first-child {
	margin-top: 0;
}
.adviser_single p {
	margin-top: 0;
}
.adviser_single p:last-child {
	margin-bottom: 0;
}

.adviser_single.archive_list {
	max-width: none !important;
	border-color: #8accaf;
}
.adviser_single.comment {
	border-color: #8accaf;
}
.adviser_single.comment:before,
.adviser_single.archive_list:before,
.adviser-list .adviser_single:before {
	display: none !important;
}
.adviser_head.single {
	position: relative;
	background: #f2f8f2;
	padding: 10px;
	color: #8accaf;
	margin: -10px -10px 10px;
}
.adviser_head figure {
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	padding: 35% 0 0;
	width: 35%;
	border: 3px solid #8accaf;
	border-radius: 7px;
	overflow: hidden;
	vertical-align: middle;
	background: #fff;
}
.adviser_head figure img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	cursor: pointer;
}
.adviser_head figure.no-click img {
	cursor: default;
}
.adviser_head article {
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	width: 62% !important;
	vertical-align: middle;
	box-sizing: border-box;
	padding-left: 10px;
}
.postContents .adviser_head article h2,
.adviser_head article h2,
.adviser_head article p.title {
	position: relative;
	font-size: 24px;
	line-height: 1.3em;
	margin: 0;
	padding: 0 0 5px !important;
	background: transparent !important;
	border: 0 !important;
	color: #333;
	letter-spacing: 0;
}
.postContents .adviser_head.single article h2,
.adviser_head article.single h2,
.adviser_head article.single p.title {
	border-bottom: 4px solid #8accaf !important;
	color: #8accaf !important;
}
.postContents .adviser-list .adviser_head article a h2:after,
.adviser-list .adviser_head article a h2:after {
	content: "\25b8";
	position: absolute;
	width: 1.3em;
	height: 1.3em;
	line-height: 1.35em;
	font-size: 15px;
	text-align: center;
	border-radius: 50%;
	background: #8accaf;
	color: #fff;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.adviser_head article h2 span {
	display: inline-block;
}
.adviser_head article p.title,
.postContents .comment .adviser_head article h2,
.comment .adviser_head article h2 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.2em;
	margin: 0 !important;
}
.adviser_head article p.title > a {
	color: #000;
}
.adviser_head article p.title > a:hover {
	color: #8accaf;
}
.adviser_head article p.title small,
.adviser_head article h2 small {
	display: block;
	font-size: 13px;
	line-height: 1.4em;
}
.postContents .adviser_single h4 {
	background: transparent;
	border-bottom: 1px solid #8accaf !important;
	border-radius: 0 !important;
	padding: 5px 10px;
	margin-top: 15px;
	line-height: 1.3em;
	border-radius: 5px;
}
.adviser-list .adviser_single {
	margin: 15px auto;
	border-color: #8accaf;
	max-width: 900px;
	transition: all 0.6s linear;
	background: #fff;
}
.adviser-list .adviser_single:hover {
	border-color: #8accaf;
	transition: all 0.2s linear;
}
.adviser-list .adviser_single.no-hover:hover {
	border-color: #8accaf;
}
.adviser-list .adviser_head figure {
	width: 90px;
	padding-top: 90px;
}
.adviser-list .adviser_head article {
	width: -webkit-calc(100% - 100px) !important;
	width: calc(100% - 100px) !important;
}
.adviser-list .adviser_head article h2 {
	font-size: 21px;
	line-height: 1.4em;
}
.adviser_head article a:hover h2 {
	color: #8accaf;
}
.adviser_head article p.url {
	margin: 5px 0 0;
	padding: 5px 0 0;
	border-top: 2px solid #8accaf;
}
.adviser_body h3 {
	background: #8accaf;
	color: #fff;
	padding: 5px 10px;
	border-radius: 5px;
}
.archive_adviser_article_list a:before,
.adviser_body a:before,
.adviser_head article p.url a:before {
	content: "\25b8";
	color: #57f;
	display: inline-block;
	text-decoration: none;
	text-indent: 0 !important;
}
.adviser_head article p.url a {
	display: block;
}
.adviser_head p.url a,
.adviser_body a {
	font-weight: bold;
	font-size: 110%;
	color: #57d;
	text-decoration: underline;
}
/*
.adviser_head p.url a:after,
.adviser_body a:after {
	content: "\1f5d7";
	display: inline-block;
	font-size: 120%;
	margin: 0 0 0 5px;
	vertical-align: 3px;
	transition: all 0.4s linear;
}
*/
.adviser_head p.url a:hover:after,
.adviser_body a:hover:after {
	transform: scale(1.3,1.3);
	transition: all 0.15s linear;
}
.adviser_body a:hover {
	color: #23d;
	text-decoration: none;
}
.adviser_body figure + figure {
	margin-top: 10px;
}
.adviser_body p {
	margin: 5px 10px 20px;
}
.adviser_body.shortcode,
.adviser_body .comment {
	position: relative;
	margin: 0;
	padding: 10px;
	background: #fff;
	border-radius: 10px;
}
.adviser_body.shortcode {
	margin-top: 20px;
	box-shadow: #8accaf 0 0 5px inset;
	overflow: hidden;
}
.adviser_body.shortcode p.h3 {
	margin: -10px -10px 10px;
	border-radius: 10px 10px 0 0;
	box-shadow: #8accaf 0 0 5px;
}
.adviser_body .comment {
	box-shadow: rgba(0,0,0,0.3) 0 0 10px;
}
.adviser_body .comment:before {
	content: "";
	position: absolute;
	left: 30px;
	top: -20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent #fff;
	border-width: 0 15px 20px;
}
.archive_adviser_article_list a {
	display: block;
	font-weight: bold;
	padding-left: 1em;
	text-indent: -1em;
	margin: 5px 0 0;
	font-size: 13px;
	line-height: 1.4em;
	color: #57d;
	text-decoration: underline;
}
.archive_adviser_article_list a:hover {
	text-decoration: none;
	color: #025;
}
.adviser_single.close .adviser_body {
	display: none;
}
.adviser_single.close .adviser_head {
	position: relative;
	cursor: pointer;
}
.adviser_single.close .adviser_head:after {
	content: "▼";
	position: absolute;
	right: 15px;
	top: 50%;
	font-size: 120%;
	transform: translateY(-50%);
	color: #8accaf;
	animation: 1s tri-blink infinite linear;
	transition: all 0.2s linear;
}
.adviser_single.close .adviser_head.on:after {
	transform: translateY(-50%) rotate(180deg);
	transition: all 0.5s linear;
}

@keyframes tri-blink {
	0%{
		opacity: 1;
	}
	30%{
		opacity: 1;
	}
	80%{
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}
.certificate {
	text-align: center;
}
.certificate img {
	width: 31%;
	vertical-align: top;
	cursor: pointer;
	transition: all 0.6s linear;
}
.certificate img:hover {
	background: #dfd;
	opacity: 0.7;
	transition: all 0.2s linear;
}
.popup_certificate {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.7);
	z-index: 50000;
	text-align: center;
}
.popup_certificate:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	height: 100%;
}
.popup_certificate:after {
	content: "×";
	position: absolute;
	display: block;
	right: 10px;
	top: 10px;
	cursor: pointer;
	font-weight: bold;
	font-size: 64px;
	line-height: 1em !important;
	padding: 0 !important;
	color: #fff;
}
.popup_certificate figure {
	position: absolute;
	display: block;
	max-width: 720px;
	width: 85%;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	vertical-align: middle;
	background: #fff;
}
.popup_certificate figure img {
	width: 100%;
	max-height: 90%;
	vertical-align: top;
}

.archive_list a {
	display: block;
	position: relative;
	background: #fff;
	padding: 10px;
	border-radius: 10px;
	border: 1px solid #c5ffe6;
}
.archive_list a + a {
	margin-top: 15px;
}
.archive_list a:hover {
	top: -1px;
	left: -1px;
	box-shadow: rgba(0,0,0,0.5) 2px 2px 6px;
}
.archive_list a:active {
	top: 0;
	left: 0;
	box-shadow: rgba(0,0,0,0.5) -1px -1px 2px;
}
.adviser_single.writer.shortcode .adviser_head figure,
.adviser_single.comment .adviser_head figure,
.archive_list a figure {
	position: relative;
	display: inline-block;
	padding: 90px 0 0;
	width: 90px;
	border: 3px solid #8accaf;
	border-radius: 7px;
	overflow: hidden;
	vertical-align: middle;
	background: #fff;
}
.adviser_single.comment .adviser_head figure img,
.archive_list a figure img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	cursor: pointer;
}
.postContents .adviser_single.comment .adviser_head article,
.adviser_single.comment .adviser_head article ,
.archive_list a .textarea {
	position: relative;
	display: inline-block;
	width: calc(100% - 110px) !important;
	vertical-align: middle;
	box-sizing: border-box;
	padding-left: 10px;
}
.adviser_single .adviser_body h3 {
	margin-left: 0;
	margin-right: 0;
}
.archive_list a p {
	margin: 5px 0 0;
	font-size: 13px;
	line-height: 1.2em;
}
.archive_list a p:first-of-type {
	margin-top: 0 !important;
}
.archive_list a p.title {
	font-weight: bold;
	font-size: 110%;
	color: #8accaf;
}
.archive_list a p.text {
	display: none;
}
.archive_list a p.date {
	float: right;
	font-weight: bold;
	color: #999;
}

.postContents p ,
.postContents .content p ,
.pageContents p ,
.pageContents .content p {
	margin-top: 20px;
}
.postContents p:first-child ,
.postContents .content p:first-child ,
.pageContents p:first-child ,
.pageContents .content p:first-child {
	margin-top: 0;
}
/* ▼▼▼▼▼ スマホでの表示 ▼▼▼▼▼ */
@media only screen and (max-width: 600px) {
	.adviser_single .adviser_head.single figure {
		display: block;
		margin: 0 auto 15px;
		width: 80%;
		padding-top: 80%;
	}
	.adviser_single .adviser_head.single article {
		display: block;
		margin: 0 auto 15px;
		width: auto !important;
		text-align: center;

	}
	.adviser_single .adviser_head.single article h2 {
		text-shadow: none;
		color: #8accaf !important;
	}
	.certificate img {
		width: 80%;
		display: block;
		margin: 10px auto;
	}
}
/* ▼▼▼▼▼ PCでの表示 ▼▼▼▼▼ */
@media only screen and (min-width: 768px) {
	.l-main h2 {
		border-width: 2px 0 !important;
	}
	.l-main p {
		margin-top: 10px;
	}
	.adviser_single {
		border-radius: 15px;
		padding: 20px;
		font-size: 16px;
		line-height: 1.8em;
		overflow: hidden;
	}
	.adviser_single:before {
		width: 85px;
		padding-top: 85px;
	}
	.adviser_single > p.h2,
	.postContents .adviser_single > h2,
	.adviser_single > h2 {
		margin: -10px -10px 10px !important;
		font-size: 24px;
		line-height: 1.4em;
	}
	.adviser_head.single {
		border-radius: 15px 15px 0 0;
		margin: -20px -20px 10px;
		padding: 20px 22px 10px;
	}
	.adviser_head figure {
		border-radius: 10px;

	}
	.adviser_head article {
		padding-left: 20px;
	}
	.adviser_head article h2 {
		font-size: 36px !important;
		line-height: 1.4em;
	}
	.adviser_head article p.title {
		font-size: 28px !important;
		line-height: 1.4em;
	}
	.adviser_head article p.title small,
	.adviser_head article h2 small {
		font-size: 15px;
		line-height: 1.4em;
	}
	.postContents .adviser_single.comment .adviser_head article h2,
	.adviser_single.comment .adviser_head article h2 {
		font-size: 24px !important;
		line-height: 1.3em;
	}
	.adviser_single p.h3 {
		font-size: 21px;
	}
	.adviser_single.writer.comment p.title {
		font-size: 21px !important;
	}
	.adviser_single.writer.shortcode .adviser_head figure,
	.adviser_single.comment .adviser_head figure ,
	.archive_list a figure ,
	.adviser-list .adviser_head figure {
		width: 100px;
		padding-top: 100px;
	}
	.postContents .adviser_single.comment .adviser_head article ,
	.adviser_single.comment .adviser_head article ,
	.archive_list a .textarea,
	.adviser-list .adviser_head article {
		width: -webkit-calc(100% - 110px) !important;
		width: calc(100% - 110px) !important;
	}
	.adviser-list .adviser_head article h2 {
		font-size: 26px;
		line-height: 1.4em;
	}
	.popup_certificate:after {
		top: 10px;
		font-size: 80px;
	}
	.adviser_single.archive_list {
		margin: 20px;
	}
	.archive_list a p {
		margin: 10px 0 0;
		font-size: 16px;
		line-height: 1.2em;
	}
	.archive_adviser_article_list a {
			font-size: 15px;
	}
	.adviser_body .comment,
	.adviser_body.shortcode {
		padding: 15px;
	}
	.adviser_body.shortcode p.h3 {
		margin: -15px -15px 15px;
	}
	.adviser_body .comment:before {
		left: 35px;
	}
	.archive_list a p.text {
		display: block;
	}
	.scroll {
		white-space: normal;
	}
	.scroll.pc {
		white-space: nowrap;
	}
}
@media only screen and (min-width: 944px) {
	.adviser_head figure {
		width: 200px;
		padding-top: 200px;
	}
	.adviser_head article {
		width: 490px !important;
	}

}
/* 画像CVボタン用CSS */
.cv_txt{
	font-weight: bold;
	font-size: 21px;
	position: relative;
	top: 12px;
}
.con{
	display: inline-block;
}
.miniCon{
	margin: 4% 20px;
	text-align: center;
}
.miniCon a{
	display: block;
}
.miniCon a img {
	width: 425px;
	max-width: 100%;
}
.ball{
	animation: ball 0.6s alternate infinite;
	-webkit-animation: ball 0.6s alternate infinite;
	-moz-animation: ball 0.6s alternate infinite;
}
@keyframes ball{
	0%   { transform:translate(0%, 0%) rotateX(10deg); }
	100% { transform:translate(0%, -10px); }
}
@media only screen and (max-width: 420px) {
	.miniCon {
		margin: 10px 0;
	}
	.cv_txt{
		font-size: 17px;
	}
}
@media only screen and (max-width: 360px) {
	.cv_txt{
		font-size: 15px;
	}
}

/* フッターのメニュー開閉（CSS） */
.bottomFooter__navi {
	overflow: hidden;
}
.bottomFooter__list__menu {
	display: inline-block;
	float: left;
	width: 30px;
	height: 24px;
	padding: 4px;
	cursor: pointer;
}
.bottomFooter__list__menu > span {
	display: block;
	background: #77e;
	width: 100%;
	height: 3px;
	margin: 0 0 4px;
}
.bottomFooter .words {
	max-width: 690px;
/*	margin: -30px auto 20px; */
	margin: 0 auto 20px;
	padding: 0 !important;
}
.bottomFooter .words li {
	color: #fff !important;
	list-style: none;
	padding-left: 1em;
	text-indent: -1em;
	margin: 0 0 10px;
	line-height: 1.2em;
}
.bottomFooter .words li:before {
	content: "※";
}

.footer_window {
	overflow-y: auto !important;
	max-width: 702px;
	margin: auto;
}
.footer_scroll_window::-webkit-scrollbar,
.footer_window::-webkit-scrollbar {
	width: 10px;
}
.footer_scroll_window::-webkit-scrollbar-track,
.footer_window::-webkit-scrollbar-track {
	background: #3f4f7f;
	border-radius: 10px;
}
.footer_scroll_window::-webkit-scrollbar-thumb,
.footer_window::-webkit-scrollbar-thumb {
	background: #8accaf;
	border: 1px solid #3f4f7f;
	border-radius: 8px;
}
.footer_scroll_window {
	height: 30px;
	overflow-y: auto !important;
	max-width: 370px;
	margin: auto;
}
.footer_scroll_window ul {
	margin-top: 50px !important;
}
@media only screen and (min-width: 760px) {
	.footer_window {
		overflow-y: scroll !important;
	}

}


/* .openclose */
.openclose {
	border: 0;
	margin: 20px 0;
}
.openclose dd {
	display: none;
	border: 0;
	padding: 0;
}
.openclose.border dd {
	padding: 10px;
	border: solid #8accaf;
	border-radius: 0 0 5px 5px;
	border-width: 0 1px 1px;
	background-color: #f2f8f2;
}
.openclose dd > * {
	margin-top: 0 !important;
}
.openclose dt {
	position: relative;
	background: #8accaf;
	border-radius: 5px;
	color: #fff;
	padding: 10px 30px 10px 15px;
	font-weight: bold;
	font-size: 100%;
	line-height: 1.2em;
	cursor: pointer;
	transition: all 0.5s linear;
}
.openclose dd table tbody td {
	background: #fff !important;
}
.openclose dt:after {
	content: "▼";
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.2s ease-out;
}
.openclose dt.on {
	border-radius: 5px 5px 0 0;
}
.openclose dt.on:after {
	transform: translateY(-50%) rotate(180deg);
	transition: all 0.5s ease-out;
}
.openclose dt:hover {
	background: #598;
}
@media only screen and (min-width: 768px) {
	.openclose.border dd {
		padding: 15px;
		border-width: 0 2px 2px;
	}
}
blockquote {
	box-shadow: rgba(0,0,0,0.3) 1px 1px 3px inset;
	border-radius: 5px;
}
blockquote cite {
	display: block;
	text-align: right;
}
@media only screen and (max-width: 768px) {
	blockquote {
		padding: 40px 10px 10px !important;
	}
	blockquote:before {
		top: 0 !important;
		line-height: 1.2em !important;
	}
}

/* 会話用ショートコードCSS */
.talk_box {
	overflow: hidden;
	margin: 30px -10px;
	max-width: 880px;
	padding: 5px;
}
.talk_box figure {
	position: relative;
	width: 30%;
	padding: 30% 0 0;
	padding-top: calc(30% - 6px);
	height: 0;
	float: left;
	overflow: hidden;
	border: 4px solid #c5ffe6;
	border-radius: 50%;
	box-shadow: rgba(0,0,0,0.5) 1px 1px 4px;
	background: #e8f0ff;
}
.talk_box figure img {
	position: absolute;
	margin: auto;
	transform: translate(-50%, -50%);
	left: 50%;
	top: 50%;
	object-fit: contain;
}
.talk_box .words {
	position: relative;
	border: 4px solid #c5ffe6;
	box-sizing: border-box;
	width: 67%;
	float: right;
	border-radius: 10px;
	padding: 8px 10px;
	margin: 0;
	box-shadow: rgba(0,0,0,0.5) 1px 1px 4px;
	background: #fff;
	color: #333;
	line-height: 1.5em;
}
.talk_box .words:before {
	content: "";
	position: absolute;
	border-style: solid;
	border-color: transparent #c5ffe6 transparent transparent;
	border-width: 10px 25px 10px 0;
	left: -25px;
	top: 20px;
}
.talk_box .words:after {
	content: "";
	position: absolute;
	border-style: solid;
	border-color: transparent #fff transparent transparent;
	border-width: 7px 18px 7px 0;
	left: -15px;
	top: 23px;
}
.talk_box.r figure {
	float: right;
}
.talk_box.r .words {
	float: left;
}
.talk_box.r .words:before {
	transform: rotate(180deg);
	left: auto;
	right: -25px;
}
.talk_box.r .words:after {
	transform: rotate(180deg);
	left: auto;
	right: -15px;
}

.talk_box.pink figure ,
.talk_box.pink .words {
	border-color: #fbb;
}
.talk_box.pink figure {
	background-color: #fff0f0;
}
.talk_box.pink .words:before {
	border-right-color: #fbb;
}
.talk_box.orange figure ,
.talk_box.orange .words {
	border-color: #fa7;
}
.talk_box.orange figure {
	background-color: #fff8e8;
}
.talk_box.orange .words:before {
	border-right-color: #fa7;
}
.talk_box.red figure ,
.talk_box.red .words {
	border-color: #f77;
}
.talk_box.red figure {
	background-color: #fee;
}
.talk_box.red .words:before {
	border-right-color: #f77;
}
.talk_box.green figure ,
.talk_box.green .words {
	border-color: #4a4;
}
.talk_box.green figure {
	background-color: #efe;
}
.talk_box.green .words:before {
	border-right-color: #4a4;
}
.talk_box.blue figure ,
.talk_box.blue .words {
	border-color: #7ae;
}
.talk_box.blue figure {
	background-color: #e8f8ff;
}
.talk_box.blue .words:before {
	border-right-color: #7ae;
}
.talk_box.yellow figure ,
.talk_box.yellow .words {
	border-color: #cc0;
}
.talk_box.yellow figure {
	background-color: #ffe;
}
.talk_box.yellow .words:before {
	border-right-color: #cc0;
}
.talk_box.purple figure ,
.talk_box.purple .words {
	border-color: #a8b;
}
.talk_box.purple figure {
	background-color: #f8e8ff;
}
.talk_box.purple .words:before {
	border-right-color: #a8b;
}
@media only screen and (min-width: 480px) {
	.talk_box {
		margin: 30px auto;
	}
	.talk_box figure {
		width: 120px;
		padding: 116px 0 0;
	}
	.talk_box .words {
		width: -webkit-calc(100% - 135px);
		width: calc(100% - 135px);
		line-height: 1.8em;
		margin-top: 10px;
	}
	.talk_box .words:before {
		top: 20px;
	}
	.talk_box .words:after {
		top: 23px;
	}
}


/* 関連記事（2022/09/21 追加） */
.kanren-box {
	display: block;
	position: relative;
	box-sizing: border-box;
	margin: 20px auto;
	padding: 0;
}
.kanren-box > p {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.3em;
}
.kanren-box a {
	display: block;
	box-sizing: border-box;
	position: relative;
	padding: 15px 5px 10px 170px;
	left: 0;
	top: 0;
	width: 100%;
	min-height: 140px;
	background: #f2f2ff;
	border-radius: 7px;
	box-shadow: rgba(0,0,0,0.5) 2px 2px 6px;
	border: 2px solid #8accaf;
	transition: all 0.6s linear;
	color: #5f5f5f !important;
}
.kanren-box a:hover {
	background: #efd;
	transition: all 0.2s linear;
	font-weight: normal;
	color: #000 !important;
}
.kanren-box a > span {
	display: inline-block;
	vertical-align: middle;
	width: 98%;
}
.kanren-box a:after {
	content: "";
	display: inline-block;
	width: 0x;
	height: 95px;
	vertical-align: middle;
}
.kanren-box > figure {
	position: absolute;
	left: 12px;
	top: 50%;
	width: 150px;
	height: 110px;
	margin: 0;
	transform: translateY(-50%);
	box-shadow: rgba(0,0,0,0.7) 1px 1px 3px;
	z-index: 1;
	overflow: hidden;
	transition: all 0.3s linear;
}
.kanren-box > figure img {
	position: absolute;
	object-fit: cover;
	top:0;
    left:0;
    width: 100%;
    height: 100%;
	transition: all 0.3s linear;
}
.kanren-box:before {
	content: attr(data-title);
	background: #c5ffe6;
	background: #8accaf;
	display: block;
	position: absolute;
	left: -5px;
	top: -15px;
	padding: 3px 20px;
	font-size: 14px;
	line-height: 1.4em;
	color: #fff;
	border-radius: 5px;
	z-index: 2;
	transition: all 0.3s linear;
	box-shadow: rgba(0,0,0,0.5) 1px 1px 3px;
}
.kanren-box:hover > figure img {
	filter: brightness(0.5);
	transform: scale(1.1,1.1) rotate(3deg);
}
.kanren-box:hover:before {
	transform: rotate(-5deg);
	transition: all 0.1s linear;
}
.kanren-box > figure:before {
	content: "記事を見る";
	position: absolute;
	display: block;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	opacity: 0;
	transition: all 0.3s linear;
	z-index: 1;
}
.kanren-box:hover > figure:before {
	opacity: 1;
}
@media only screen and (max-width: 640px) {
	.kanren-box a {
		padding: 15px 5px 10px 130px;
		min-height: 85px;
	}
	.kanren-box a:after {
		height: 70px;
	}
	.kanren-box > figure {
		width: 110px;
		height: 75px;
	}
	.kanren-box:before {
		padding: 3px 12px;
	}
	table.smt-layout td,
	table.smt-layout th {
		display: block !important;
		width: auto !important;
	}
	h1.heading {
		font-size: 5.5vw;
		line-height: 1.4em;
		margin-bottom: 5px;
	}

}
table.smt-layout {
	table-layout: fixed;	
}

/* 一方通行フローチャート */
.flowchart {
	position: relative;
	max-width: 800px;
	margin: 30px auto;
	padding: 20px;
	background: #f0f0f0;
	box-shadow: rgba(0, 0, 0, 0.5) 1px 1px 2px;
}
.flowchart[data-title] {
	padding-top: 30px;
	margin-top: 35px;
}
.flowchart-title,
.flowchart[data-title]:before {
	content: attr(data-title);
	position: absolute;
	left: 20px;
	top: 0;
	padding: 5px 10px;
	background: #4264bf;
	color: #fff;
	font-size: 120%;
	font-weight: bold;
	line-height: 1.2em;
	border-radius: 5px;
	transform: translateY(-50%);
	max-width: calc(100%-40px);
	box-shadow: rgba(0, 0, 0, 0.5) 2px 2px 4px;
}
.flowchart li {
	position: relative;
	background: #fff;
	padding: 10px;
	margin: 40px 0 0 !important;
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.5) 1px 1px 1px;
	z-index: 1;
}
.flowchart li:first-of-type {
	margin-top: 0 !important;
}
ul.flowchart li:before {
	display: none;
}
ol.flowchart li {
	padding-left: 40px !important;
}
ol.flowchart li:before {
	left: 10px;
	font-size: 20px;
	background: #4264bf;
	color: #fff !important;
	font-weight: bold;
	border: 0;
	padding-top: 1px;
}
.flowchart li:after {
	content: "";
	display: block;
	position: absolute;
	transform: translateX(-50%);
	left: 50%;
	top: 100%;
	width: 100px;
	height: 40px;
	background: #4264bf;
	z-index: -1 !important;
	border-top: rgba(0, 0, 0, 0.5) solid 1px;
}
.flowchart li:nth-last-child(2):after {
	height: 10px;
}
.flowchart li:last-child:after {
	background: transparent;
	width: 0;
	height: 0;
	border: solid;
	border-color: #4264bf transparent transparent;
	border-width: 30px 70px 0;
	top: -30px;
}
@media only screen and (max-width: 640px) {
	.flowchart {
		padding: 15px;
	}
	.flowchart li {
		margin: 30px 0 0 !important;
	}

	.flowchart li:last-child:after {
		border-width: 20px 70px 0;
		top: -20px;
	}
	ol.flowchart li {
		padding-left: 32px !important;
	}
	ol.flowchart li:before {
		left: 5px;
		font-size: 15px;
	}
	
	.content { font-size: 1.48rem;}
.bottomFooter__list li a{padding:.7em 0;}	
}
.flowchart.v2 {
	background: #42548f;
}
.flowchart.v2 li:after {
	background: #eef;
}
.flowchart.v2 li:last-child:after {
	background: transparent;
	border-color: #eef transparent transparent;
}
.flowchart.v2 .flowchart-title,
.flowchart.v2[data-title]:before {
	background: #eef;
	color: #42548f;
	border: 1px solid #42548f;
}
.flowchart.v3 {
	background: #e0e0f0;
}
.flowchart.v3 li {
	background: #42548f;
	color: #fff;
}
.flowchart.v3 li:after {
	background: #fff;
}
.flowchart.v3 li:last-child:after {
	background: transparent;
	border-color: #fff transparent transparent;
}
ol.flowchart.v3 li:before {
	background: #fff;
	color: #42548f!important;
}
.flowchart.v3 .flowchart-title,
.flowchart.v3[data-title]:before {
	background: #42548f;
	border: 1px solid #fff;
}
.flowchart[data-title]:before {
	display: none !important;
}
/* テーブル開閉システム */
.table-close table,
table.table-close {
	table-layout: fixed;
}
.table-close + p.table-open {
	display: inline-block;
	padding: 5px 15px;
	margin: 5px 0 20px;
	background: #3e4d7c;
	background: linear-gradient(175deg,  #c5ffe6 0%,#3e4d7c 80%);
	color: #fff !important;
	border-radius: 20px;
	cursor: pointer;
	font-size: 14px;
	line-height: 1.4em;
}


/* リッチリスト */
dl.rich_list {
	margin: 20px 0;
	padding: 0;
}
dl.rich_list dt {
	position: relative;
	background: #42548f;
	padding: 12px 15px 10px;
	margin: 0 0 10px;
	border: 0 !important;
	line-height: 1.2em;
	font-weight: bold;
	color: #fff;
	border-radius: 7px;
}
dl.rich_list dt:before {
	content: "";
	display: block;
	position: absolute;
	border-style: solid;
	border-width: 12px 7px 0;
	border-color: #42548f transparent transparent;
	left: 50px;
	bottom: -12px;
}
dl.rich_list dt[style]:before {
	background: inherit;
	border-color: transparent #fff #fff;
}
dl.rich_list dd {
	padding: 0;
	margin: 0 0 15px !important;
	border: 0 !important;
	line-height: 1.5em;
}
.content dl.rich_list dd h3,
dl.rich_list dd h3,
.content dl.rich_list dd h4,
dl.rich_list dd h4,
.content dl.rich_list dd h5,
dl.rich_list dd h5,
.content dl.rich_list dd h6,
dl.rich_list dd h6 {
	margin: 0 !important;
	padding: 2px 0 5px 30px;
	background: url(./images/icon-check.png) no-repeat left top !important;
	border: 0 !important;
	background-size: 28px 28px !important;
	font-size: 115%;
	line-height: 1.2em;
	color: #000 !important;
}
dl.rich_list dd h3 b,
dl.rich_list dd h4 b,
dl.rich_list dd h5 b,
dl.rich_list dd h6 b {
	color: #d22;
}
dl.rich_list dd p br:first-child,
dl.rich_list dd h3 + br,
dl.rich_list dd h4 + br,
dl.rich_list dd h5 + br,
dl.rich_list dd h6 + br {
	display: none;
}
dl.rich_list dd p {
	margin: 0 0 0 20px !important;
	padding: 0;
	line-height: inherit
}
.content dl.rich_list dd ul li {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	line-height: 1.3em !important;
}
.content dl.rich_list dd ul li:before {
    background: #a8a8f4;
	top: 5px;
}
.content dl.rich_list dd table tr th {
	background: #f09f48 !important;
	color: #fff !important;
}
@media (max-width: 600px){
	dl.rich_list dt {
		padding: 10px 12px 8px;
	}
}

/* PR表記（the Thor用） */
.l-main.pr .dateList-main {
	position: relative;
}
.icon-pr:before,
.l-main.pr .dateList-main:before {
	content: "PRあり";
	padding: 3px 7px;
	margin-right: 5px;
	background: #fff;
	color: #555;
	border: 1px solid #777;
	font-size: 14px;
	line-height: 1.1em;
	font-weight: bold;
	border-radius: 2px;
}
.icon-pr:before {
	display: inline-block;
	margin: 0 5px 5px 0;
}
.icon-pr.clinicfor:before {
	content: "※CLINIC FORの情報提供元：CLINIC FOR";
}
@media (max-width: 680px){
	.l-main.pr .dateList-main:before {
		font-size: 12px;
	}
}
.l-headerBottom {
    border: 0 !important;
}
.l-headerBottom .wider,
.l-headerBottom .wider .still ,
.l-headerBottom .wider .still .still__box ,
.l-headerBottom .wider .still .still__box .still__bg mask {
    position: static !important;
    display: block !important;
    width: auto !important;
    height: auto;
    text-align: center;
    border: 0 !important;
    padding: 0;
}
.l-headerBottom .wider .still {
    max-height: 500px !important;
    height: 60vw !important;
    border: 0 !important;
}
.l-headerBottom .wider .still .still__box .still__bg.mask img.still__img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 1000px;
    top: auto !important;
    left: auto !important;
    margin: auto;
    z-index: 5;
    overflow-clip-margin: 0 !important;
    overflow: visible;
}

.btn_click {
    cursor: pointer;
    color: var(--color_link);
}

/* .table-change（テーブル切り替え） */
.table-change {
	margin: 20px auto 40px;
}
.table-change table {
	margin-top: 0 !important;
	table-layout: fixed;
}
.table-change table th {
	text-align: center;
}
.table-change > div {
	margin-top: 0 !important;
}
.tab-box > ul,
.table-change > ul {
	display: table;
	border-collapse: separate;
	border-spacing: 1px 0;
	width: 100%;
	table-layout: fixed;
	margin: 0;
	border: 0;
	border-bottom: 4px solid #8accaf;
}
.tab-box > ul {
	width: calc(100% + 2px);
	margin: 0 -1px !important;
	border-bottom: 0;
}
.tab-box > ul > li,
.table-change > ul > li {
	position: relative;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 50%;
	padding: 10px 0;
	line-height: 1.2em;
	background: #e0f8e8;
	color: #8accaf;
	cursor: pointer;
	border-radius: 8px 8px 0 0 / 20px 20px 0 0;
	border-top: 10px solid #fff;
	border-bottom: 1px solid #fff;
	transition: all 0.3s linear;
}
.tab-box > ul > li:before,
.table-change > ul > li:before {
	content: "";
	display: none;
}
.tab-box > ul > li.on,
.table-change > ul > li.on {
	color: #fff;
	background: #8accaf;
	font-weight: bold;
	border-top: 0;
	border-bottom: 0;
	transition: all 0.2s linear;
	border-radius: 8px 8px 0 0;
}
.tab-box > ul > li:after {
	content: "" !important;
	display: block;
	position: absolute;
	left: auto;
	left: 50%;
	bottom: 2px;
	border-style: solid;
	border-color: #8accaf transparent transparent;
	border-width: 0;
	transform: translateX(-50%);
	z-index: 2;
	transition: all 0.3s linear;
}
.tab-box > ul > li.on:after {
	bottom: -10px;
	border-width: 10px 7px 0;
}
.tab-box > div {
	border: 2px solid #8accaf;
	padding: 15px;
	border-radius: 0 0 10px 10px;
	margin: 0 0 30px;
	color: #000;
	background: #fff8f0;
}
.tab-box.blue > ul > li,
.table-change.blue > ul > li {
	color: #8accaf;color: #777;
	background: #b0f8ff !important;
}

.tab-box.blue > ul > li.on,
.table-change.blue > ul > li.on {
	background: #8accaf !important;
	color: #fff !important;
}
.tab-box.blue > ul > li.on:after {
	border-color: #8accaf transparent transparent;
}

.tab-box.blue > div {
	border-color: #8accaf !important;
	background: #e0f8e8 !important;
}
.tab-box.no-border > div {
	border: 0;
	padding: 0;
	border-radius: 0;
	background: transparent !important;
}
.table-change table .af-btn {
	min-width: 70px;
	padding: 0;
	border-width: 1px;
	height: 50px;
}
@media (max-width: 600px){
	.tab-box > ul > li,
	.table-change > ul > li {
		font-size: 12px;
		line-height: 1.2em;
	}
	.table-change .af-button {
		width: 100% !important;
		padding: 0 !important;
	}
	.table-change .af-button.arrow > span,
	.table-change .af-button.triangle > span,
	.table-change .af-button > span {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		max-width: none !important;
	}
	.table-change .af-button span {
		width: 100% !important;
		flex-basis: 100% !important;
		margin: 0 !important;
		padding: 5px 5px 0 !important;
		max-width: none !important;
	}
	.table-change a.af-button.triangle > span > span {
		width: 100% !important;
		max-width: none !important;
	}
	.table-change table .af-btn > span {
		font-size: 12px;
	}
}



/* (swell)タブボックス */
.wp-block-column {

}
.content .swell-block-tab ul {
	display: table !important;
	border-bottom: 3px solid #8accaf;
	table-layout: fixed;
	height: 45px;
	border-collapse: separate;
	border-spacing: 1px 0;
	width: 100% !important;
	margin-bottom: 1px;
}
.content .swell-block-tab ul li {
	display: table-cell !important;
	list-style: none;
	background: #dbf5ea;
	color: #8accaf;
	padding: 5px !important;
	text-align: center;
	vertical-align: middle;
	float: none !important;
	border-radius: 10px 10px 0 0;
	border-bottom: 1px solid #fff;
}
.content .swell-block-tab ul li.on {
	background: #8accaf;
	color: #fff;
	border-bottom: 0;
}
.content .swell-block-tab ul li button {
	border: 0;
	background: transparent;
	width: 100%;
	height: 100%;
	padding: 0 !important;
	color: #8accaf;
	cursor: pointer;
}
.content .swell-block-tab ul li.on button {
	color: #fff;
}
.content .swell-block-tab ul li:before {
	display: none !important;
}
.content .swell-block-tab .c-tabBody {
	padding: 0 !important;
	margin: 0 !important;
}
.content .swell-block-tab .c-tabBody .c-tabBody__item,
.content .swell-block-tab .c-tabBody table {
	margin: 0 !important;
}


/* XO-Slider 修正 */
.xo-slider .swiper,
.xo-slider .swiper-slide img ,
.xo-slider .swiper-slide {
	margin: 0 auto;
	padding: 0;
	max-width: 100% !important;
}
.xo-slider .swiper-wrapper .swiper-slide-visible {
	cursor: pointer;
}

/* -------------------------------------
	2.header
-------------------------------------- */
.matsumaga-header,
.matsumaga-footer {
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	color: #00324d;
	background: url("https://www.matsunaga1131.com/wp-content/uploads/original/main_bg.jpg") repeat center center;
}
.matsumaga-footer {
	padding-top: 10px;
}

header {
	width: 100%;
}

header > .siteTitle {
	position: static !important;
	background-color: rgba(0,50,77,0.5);
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
}
header > .siteTitle h1 {
	display: block !important;
	font-weight: normal;
	width: auto;
	max-width: 1000px !important;
	margin: 0 auto;
	padding: 3px 15px !important;
	color: #FFF;
	font-size: 16px !important;
	line-height: 1.5em;
	box-sizing: border-box;
}


header .hdrWrap {
	height: 140px;
	width: 1030px;
	margin: 0 auto;
	padding: 35px 15px 0 15px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
@media (max-width:767px) {
	header .hdrWrap {
		width: 100%;
		padding: 5px;
		height: 100%;
	}
	header > .siteTitle h1 {
		display: none;
	}
}

.hdrTell {
	padding-left: 38px;
	background: url("https://www.matsunaga1131.com/wp-content/uploads/original/hdr_tell.png") no-repeat left center;
	width: 25%;
	height: 34px;
	line-height: 34px;
	font-size: 28px;
	color: #0d5780;
	white-space: nowrap;
}

.hdrAddress {
	font-size: 2rem;
	color: #0d5780;
	font-weight: 600;
}

#SPMENU {
	display: none;
}

#hdrDMY {
	display: none;
}

@media (max-width:767px) {
	#hdrDMY {
		display: block;
		height: 85px !important;
	}
	.matsumaga-header {
		background: transparent;
	}
	header {
		position: fixed;
		display: flex;
		top: 0;
		left: 0;
		width: 100%;
		height: 85px !important;
		background-color: rgba(255,255,255,0.9);
		box-shadow: 0 0 6px rgba(0,0,0,0.3);
		z-index: 100;
		align-items: center !important;
		justify-content: space-around !important;
	}
	header > .siteTitle {
		display: none !important;
	}
	#SPMENU {
		display: block;
		width: 58px;
		height: 48px;
		padding-right: 10px;
	}
	#SPMENU img {
		max-width: 100%;
	}

	.hdrTell,
	.hdrAddress {
		display: none;
	}

	.hdrLogo {

	}

	.hdrLogo > p img {
		width: 190px;
	}
}


/* -------------------------------------
	3.gNav
-------------------------------------- */

#gNav {
	height: 120px;
	z-index: 5000;
}

#gNav > ul {
	list-style: none;
	padding: 0;
	margin: 0 auto;
	box-sizing: border-box;
	width: 1030px;
	display: flex;
	justify-content: space-around;
	padding-top: 20px;
	position: relative;
	z-index: 5000;
}
#gNav > ul > li {
	width: 100px;
	height: 100px;
	box-sizing: border-box;
	position: relative;
}
#gNav > ul > li > a {
	display: block;
	border-radius: 10px;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	transition: all 0.3s;
	background-color: rgba(255,255,255,0);
	padding: 10px 0 0 0;
	text-align: center;
}
#gNav > ul > li > a:hover {
	background-color: rgba(255,255,255,0.35);
	text-decoration: none;
}
#gNav > ul > li > a img,
#gNav > ul > li > a span {
	display: block;
	text-align: center;
}

#gNav > ul > li > a img {
	margin: 0 auto;
}

#gNav > ul > li > a span {
	width: 100%;
	font-size: 1.8rem;
	margin-top: 10px;
}

#gNav ul li#SPCLOSE {
	display: none;
}


#gNav ul li.has_under .subNav {
	padding-top: 30px;
	position: absolute;
	left: 0;
	top: 80%;
	display: none;
}

#gNav ul li.has_under ul {
	border: 1px solid #F00;
	border: 2px solid #00324d;
	padding: 10px;
	background-color: rgba(255,255,255,0.9);
	list-style: none;
	font-size: 1.6rem;
	border-radius: 15px;
	position: relative;
}
#gNav ul li.has_under ul::before {
	content:"";
	border: 10px solid #00324d;
	border-color: transparent transparent #00324d transparent;
	display: block;
	position: absolute;
	left: 20px;
	top: -20px;
}
#gNav ul li.has_under ul li {
	margin-bottom: 5px;
	text-align: left;
}
#gNav ul li.has_under ul li a {
	text-decoration: underline;
	padding-left: 15px;
	background-image: url("https://www.matsunaga1131.com/wp-content/uploads/original/gNav_sub_mrk.png");
	background-repeat: no-repeat;
	background-position: left;
	white-space: nowrap;
	transition: all 0.3s;
}
#gNav ul li.has_under ul li a:hover {
	text-decoration: none;
	background-position: 6px center;
}

#gNav ul li.spNav {
	display: none;
}

@media (max-width:767px) {
	#gNav {
		width: 100%;
		height: calc(100vh - 85px);
		position: fixed;
		overflow-y: scroll;
		left: 0;
		top: 85px;
		background-color: rgba(255,255,255,0.9);
		box-shadow: 0 0 8px rgba(0,0,0,0.3);
		z-index: 50;
		display: none;
	}
	#gNav > ul {
		width: 100%;
		height: auto;
		display: block;
		margin: 0;
		padding: 0;
	}
	#gNav > ul > li {
		width: 100%;
		height: auto;
		border-bottom: 1px dashed rgba(0,0,0,0.2);
	}
	#gNav > ul > li > a {
		text-align: center;
		background-color: transparent;
		border-radius: 0;
		width: 100%;
		height: auto;
		padding: 8px;
	}
	#gNav > ul > li > a span {
		width: auto;
		text-align: left;
		display: inline;
		font-size: 1.6rem;
	}
	#gNav > ul > li > a img {
		display: none;
	}

	#gNav ul li#SPCLOSE {
		display: block;
		text-align: center;
		padding: 10px;
		font-size: 1.2rem;
		background-color: rgba(0,0,0,0.1);
	}

	#gNav ul li.has_under .subNav {
		display: none !important;
	}

	#gNav ul li.spNav {
		display: block;
	}

	#gNav ul li.pcNav {
		display: none;
	}
}

.category-navi {
	background: rgba(0,0,0,0.15);
}
#gNav:has(.category-navi) {
	height: auto;
}
.category-navi > div {
	max-width: 1000px;
	width: 100%;
	margin: auto;
	padding: 0;
	display: table !important;
	border-collapse: collapse;
	table-layout: fixed;
}
.category-navi ul {
	display: table-row !important;
	margin: 0;
	padding: 0;
}
.category-navi ul > li {
	display: table-cell !important;
	text-align: center;
	vertical-align: middle;
	margin: 0 !important;
	padding: 0 !important;
}
.category-navi ul > li a {
	position: relative;
	padding: 10px !important;
	margin: 0 !important;
}
@media (max-width:767px) {
	.category-navi ul > li a,
	.category-navi > div,
	.category-navi ul ,
	.category-navi ul > li {
		display: block !important;
		width: auto;
		height: auto;
		float: none !important;
		text-align: center;
	}
}
/* -------------------------------------
	4.footer
-------------------------------------- */

footer {
	width: 100%;
	padding-top: 0px;

}

#fNav {
	margin-bottom: 5px;
}
#fNav ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	font-size: 18px;
	list-style: none;
}
#fNav ul li {
	position: relative;
	line-height: 1.2;
	letter-spacing: 0.5em;
}
#fNav ul li::after {
	content: "";
	display: block;
	width: 1px;
	height: 80%;
	position: absolute;
	top: 20%;
	right: 0;
	background-color: #0d5780;
}
#fNav ul li:last-child::after {
	display: none;
}

#fNav ul li a {
	padding: 0 0.5em 0 1em;
}

@media (max-width:767px) {
	#fNav {
		display: none;
	}
}


footer .ftrWrap {
	padding: 60px 0 20px 0;
	background-color: rgba(71,91,91,0.08);
}
footer .ftrContent {
	box-sizing: border-box;
	width: 940px;
	padding: 0 15px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
@media (max-width:767px) {
	footer .ftrContent {
		width: 100%;
	}
}

footer .ftrContent .ftrColmn {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: stretch;
	width: 540px;
}

footer .ftrLogo {
	width: auto;
}

footer .ftrInfo {
	width: auto;
	box-sizing: border-box;
	padding: 0 0 0 2em;
}


footer .ftrTell {
	padding-left: 34px;
	background-image: url("https://www.matsunaga1131.com/wp-content/uploads/original/ftr_tell.png");
	background-repeat: no-repeat;
	height: 28px;
	line-height: 28px;
	font-size: 2.2rem;
	color: #0d5780;
	margin-bottom: 12px;
}
footer .ftrAddress {
	font-size: 1.8rem;
	color: #0d5780;
}

@media (max-width:767px) {
	footer .ftrContent .ftrColmn {
		width: 100%;
		text-align: center;
		display: block;
	}

	footer .ftrInfo,
	footer .ftrLogo {
		width: auto;
	}
	footer .ftrInfo {
		padding: 20px 0 0 0;
		display: inline-block;
		text-align: left;
	}
}


footer .ftrMap {
	width: 300px;
	height: 300px;
}
@media (max-width:767px) {
	footer .ftrMap {
		width: 100%;
		height: 200px;
	}
}

footer .ftrMap iframe {
	width: 100%;
	height: 100%;
}

footer .ftrTimeTable {
	width: 100%;
	box-sizing: border-box;
	display: flex;
	align-items: flex-end;
}

footer .ftrTimeTable table {
	width: 100%;
	border-collapse: collapse;
}

footer .ftrTimeTable table th,
footer .ftrTimeTable table td {
	border: 1px solid #0d5780;
	color: #0d5780;
	padding: 10px;
	text-align: center;
	vertical-align: middle;
	font-weight: normal;
}

footer .ftrTimeTable table th {
	font-size: 1.8rem;
}
footer .ftrTimeTable table td {
	font-size: 1.6rem;
}
@media (max-width:767px) {
	footer .ftrTimeTable {
		padding: 20px 0;
	}
	footer .ftrTimeTable table th,
	footer .ftrTimeTable table td {
		padding: 5px;
		font-size: 1.2rem;
	}
}

footer .ftrCopy {
	text-align: center;
	font-size: 1.2rem;
	padding: 50px 15px 10px 15px;
}

.jima a {
    display: contents;
}
.jima img{
margin:auto;
}

/*20191217*/
.sp-only{
	display: none;
}
@media (max-width: 767px){
	.sp-only{
		display: block;
	}
	.pc-only{
		display: none;
	}
}
.breadcrumb a:hover {
	color: #fff !important;
	text-decoration: underline;
}