﻿@charset "utf-8";

/* --------------------------------------------------------- */
/* 個別ページ用 - page.css
------------------------------------------------------------ */


/* OUTLINE
------------------------------------------------------------ */
* { box-sizing: border-box; }
body { }
#wrapper { }
#side { padding: 10px 0 0 0; }
#headBox { }
#crumb_parent {
	background: #ececec;
}
.crumb {
	padding: 10px 0;
	font-size: 12px; font-size: 1.2rem;
	width: 95vw;
	margin: 0 auto;
}
.crumb li { display: inline; }
.crumb li a {
	position: relative;
	padding-right: 20px;
}
.crumb li a::before {
	display: block;
	font-family: 'Material Icons';
	content: '\e5cc';
	position: absolute;
	top: 0;
	right: 0;
	color: #666;
}
#contents { }
@media print, screen and (min-width: 1000px) {
body { }
#headBox { }
.crumb {
	width: 1000px;
}
#contents {
	width: 1000px;
	margin: 0 auto;
}
#footBox { }
#foot { }
}
/* title.css
------------------------------------------------------------ */
#title {
	width: 100%;
	background: #ffdaa7;
	margin-bottom: 50px;
}
#title h2 {
	font-size: 24px; font-size: 2.4rem;
	width: 95vw;
	margin: 0 auto;
	padding: 25px 0;
	line-height: 1.75em;
	color: #805228;
}
#title h2 span::after {
	content: '：';
	font-size: 16px; font-size: 1.6rem;
}
#title h2 span {
	display: block;
	font-size: 16px; font-size: 1.6rem;
}
#main h3 {
	font-size: 20px; font-size: 2rem;	
	background: #ffdaa7;
	color: #333;
	padding: 25px;
	line-height: 1.75em;
	border-bottom: solid 3px #ee7a0c;
	margin-bottom: 15px;
	width: 100vw;
	box-sizing: border-box;
}
#main hr {
	border: dashed 2px #ccc;
	margin-bottom: 50px;
}
@media print, screen and (min-width: 1000px) {
#title h2 {
	width: 1000px;
}
#title h2 span {
	display: inline;
}
#main h3 {
	font-size: 24px; font-size: 2.4rem;
	width: 100%;
}
#main hr {
	width: 1000px;
	margin: 0 auto 50px auto;
}
}

/* #main > #main_navi
------------------------------------------------------------ */
#main_navi { padding: 0 10px; }
#main_navi p {
	font-size: 14px; font-size: 1.4rem;
	margin-bottom: 15px;
}
#main_navi ul {
	font-size: 16px; font-size: 1.6rem;
	background: #fff;
	line-height: 1.2em;
}
#main_navi ul li {
	*zoom: 1;
	width: 300px;
	margin: 0 5px 10px 0;
	padding: 5px;
	box-sizing: border-box;
	display: inline-block;
	/* border-radius */
	border-radius:6px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	/* border */
	border: solid 1px #999;
}
#main_navi ul li a {
	display: block;
	padding: 7px 0 7px 20px;
	color: #fff;
	font-size: 16px; font-size: 1.6rem;
	position: relative;
}
#main_navi ul li a:hover::before {
	display: block;
	content: "";
	position: absolute;
	right: 15px;
	top: 15px;
	width: 12px;
	height: 2px;
	background: #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#main_navi ul li a:hover::after {
	display: block;
	content: "";
	position: absolute;
	right: 15px;
	top: 12px;
	width: 8px;
	height: 8px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
}
#main_navi ul li span {
	font-size: 14px; font-size: 1.4rem;
	display: block;
	padding: 10px;
}

/* #main > .txtBox
------------------------------------------------------------ */
.block_u25, .block_u50 {
	padding: 0;
	width: calc(100vw - 20px);
	box-sizing: border-box;
}
.block_u25 { margin: 0 10px 25px 10px; }
.block_u50 { margin: 0 10px 50px 10px; }
.block_Img_u25, .block_Img_u50 {
	padding: 0;
	width: 100vw;
	box-sizing: border-box;
	text-align: center;
}
.block_Img_u25 { margin: 0 0 25px 0; }
.block_Img_u50 { margin: 0 0 50px 0; }
.block_annotation {
	border: dashed 2px #666;
	background: #F6F6F6;
	padding: 15px 0 0 0;
	margin: 50px 10px 25px 10px;
	position: relative;
	box-sizing: border-box;
}
.block_annotation::before {
	display: block;
	content: "注釈";
	position: absolute;
	font-size: 16px; font-size: 1.6rem;
	font-weight: bold;
	padding: 10px 20px;
	background: #666;
	color: #fff;
	top: -44px;
	left: 25px;
	margin: 10px 10px 25px 10px;
}
.block_emphasis {
	text-decoration:underline;
	text-decoration-color: red;
	font-size: 20px; font-size: 2rem;
	line-height: 1.5em;
	font-weight: bold;
}
.flowBox { text-align: center; }
.txtBox {}
.txtBox p {
	line-height: 1.75em;
	color: #333;
	font-size: 16px; font-size: 1.6rem;
	padding: 0 15px;
	margin-bottom: 15px;
}
.img_comment { font-size: 14px; font-size: 1.4rem; }

.txtBox ol {
	margin: 0 10px 25px 10px;
	counter-reset: item;
}
.txtBox ol li {
	line-height: 1.5em;
	padding: 0 0 15px 1.3em;
	text-indent: -1.3em;
	font-size: 16px; font-size: 1.6rem;
}
.txtBox ol li::before {
	counter-increment: item;
	content: counter(item)'.';
	/* 以下は自由に装飾... */
	padding-right: .5em;
	font-weight: bold;
	color: #b40000;
}
.txtBox ol li ul { padding: 0; }
.txtBox ol li ul li { padding: 0 0 0 13px; }

.txtBox dl { font-size: 14px; font-size: 1.4rem; }

#main h4 {
	font-size: 18px; font-size: 1.8rem;	
	color: #333;
	padding: 20px;
	line-height: 1.75em;
	margin-bottom: 25px;
	width: 100%;
	box-sizing: border-box;
	border-bottom: solid 3px #cce4ff;
	position: relative;
}
#main h4:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px;
	bottom: -3px;
	margin-left: -25px;
	width: 20%;
}
.txtBox h5 {
	font-size: 16px; font-size: 1.6rem;
	color: #333;
	position: relative;
	padding: 4px 10px 15px 30px;
	margin: 0 10px 25px 10px;
	line-height: 1.75em;
	border-bottom: 2px dashed #999;
	box-sizing: border-box;
	width: (100vw - 20px);
}
.txtBox h5::before {
	content:"\ef4a";
	font-family: 'Material Icons';
	position: absolute;
	left: 0;
	top: 4px;
	color: #333;
}
.txtBox h6 {
	font-size: 16px; font-size: 1.6rem;
	color: #333;
	position: relative;
	margin: 0 10px 25px 10px;
	padding: 12px 12px 12px 40px;
	line-height: 1.75em;
	box-sizing: border-box;
	width: (100vw - 20px);
	border-radius: 20px;
}
.txtBox h6::before {
	content:"\e5d3";
	font-family: 'Material Icons';
	position: absolute;
	left: 0;
	top: 0;
	padding: 12px;
}

#main .onepoint li { padding: 5px 5px 5px 15px; }
ul.arrow, ul.check, ul.circle, ul.checkBox, ul.arrowD {
	padding: 0;
	margin: 0 10px 25px 10px;
	line-height: 1.75em;
	color: #333;
	font-size: 16px; font-size: 1.6rem;
}
ul.arrow li, ul.check li, 
ul.circle li, ul.checkBox li, ul.arrowD li {
	position: relative;
	padding-left: 26px;
	margin-bottom: 15px;
}
ul.arrow li::before, ul.check li::before, 
ul.circle li::before,  ul.checkBox li::before, 
ul.arrowD li::before {
	display: block;
	font-family: 'Material Icons';
	position: absolute;
	font-size: 18px; font-size: 1.8rem;
}
ul.arrow li::before {
	content: '\e5cc';
	left: 0;
	top: 0;
}
ul.check li::before {
	content: '\e5ca';
	left: 0;
	top: 0;
}
ul.circle li::before {
	content: '\e836';
	left: 0;
	top: 0;
}
ul.checkBox li::before {
	content: '\e834';
	left: 0;
	top: 0;
}
ul.arrowD li::before {
	content: '\ea50';
	left: 0;
	top: 0;
}
ul.col3, ul.col2 {
	display: flex;
	flex-wrap: wrap;
}
ul.col2 li {
	width: 300px;
}
ul.col3 li {
	width: 230px;
	box-sizing: border-box;
}
.tel-link { color: #06F; }
.red { color: #f00; }
.2xgraph {
	display: block;
	width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

@media print, screen and (min-width: 750px) {
.block_u25, .block_u50 {
	width: 750px;
}
.block_Img_u25, .block_Img_u50 {
	width: 100%;
}
.block_u25, .block_Img_u25 { margin: 0 auto 25px auto; }
.block_u50, .block_Img_u50 { margin: 0 auto 50px auto; }
.block_annotation {
	margin: 50px auto 25px auto;
	width: 720px;
}
.block_emphasis {
	margin: 10px auto 25px auto;
	width: 800px;
}
.txtBox {}
.txtBox p {
	padding: 0 25px;
}
#main h4 {
	font-size: 22px; font-size: 2.2rem;
	width: 100%;
	padding: 20px 20px 20px 150px
}
#main h4:after {
	margin-left: -150px;
	width: 30%;
}
.txtBox h5 {
	font-size: 18px; font-size: 1.8rem;
	width: 750px;
	margin: 0 25px 25px 0;
}
.txtBox h6 {
	width: 730px;
	margin: 0 0 25px 0;
}
.txtBox ol {
	margin: 0 25px 25px 25px;
}
ul.arrow, ul.check, ul.circle, ul.checkBox, ul.arrowD {
	margin: 0 25px 25px 25px;
}
.txtBox li {}
.txtBox dl.exclamation {
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
	padding: 5px 15px 5px 15px;
	margin-bottom:10px;
}
.txtBox dl.exclamation dt {
	padding: 5px 0 5px 17px;
	background: url(../img/common/ico_exclamation.png) no-repeat 2px 8px;
}
.txtBox dl.exclamation dd {
	padding: 0 0 5px 17px;
	line-height: 1.6em;
}
.txtBox .rightImg {
	float: right;
	padding: 0 0 10px 10px;
}
.txtBox .leftImg {
	float: left;
	padding: 0 10px 10px 0;
}
.txtBox .rightImg span, .txtBox .leftImg span {
	font-size: 12px; font-size: 1.2rem;
	line-height: 1.2em;
	display: block;
	padding: 3px 0;
}
}
/* .flowBox2
------------------------------------------------------------ */
.flowBox2 {
	width: 100vw;
	margin: 0 auto 50px auto;	
}
.flowBox2 ul.flow2_main li {
	position:relative;
	border: 3px solid #333;
	border-radius: 16px;
	width: 90%;
	margin: 0 auto 40px auto;
	padding: 6px 6px 0 6px;
}
.flowBox2 ul.flow2_main li span {
	display: block;
	border-radius: 8px;
	text-align: center;
	font-size: 20px; font-size: 2rem;
	font-weight: bold;
	padding: 20px 10px;
}
.flowBox2 ul.flow2_main li span a:link, .flowBox2 ul.flow2_main li span a:visited { color: #333; }
.flowBox2 ul.flow2_main li span a:hover, .flowBox2 ul.flow2_main li span a:active { color: #333; }
.flowBox2 ul.flow2_main li p {
	line-height: 1.5em;
	font-size: 16px; font-size: 1.6rem;
	color: #333;
	padding: 15px 10px 15px 10px;
}
.flowBox2 ul.flow2_main li dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin: 0 auto 15px auto;
}
.flowBox2 ul.flow2_main li dl dt {
	position:relative;
	padding: 10px 10px 10px 50px;
	color: #333;
	font-weight: bold;
	font-size: 16px; font-size: 1.6rem;
	border-bottom: 1px solid #333;
	width: 100%;
	box-sizing: border-box;
}
.flowBox2 ul.flow2_main li dl dt::before {
	display: block;
	top: 0;
	left: 0;
	font-family: 'Material Icons';
	content: '\e873';
	position: absolute;
	font-weight: normal;
	font-size: 20px; font-size: 2rem;
	color: #fff;
	padding: 10px;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.flowBox2 ul.flow2_main li dl dd {
	position:relative;
	padding: 10px 10px 10px 20px;
	color: #333;
	font-size: 14px; font-size: 1.4rem;
	line-height: 1.5em;
	border-bottom: 2px dashed #ccc;
	width: 90%;
	box-sizing: border-box;
}
.flowBox2 ul.flow2_main li dl dd:last-child {
	border-bottom: none;
}
.flowBox2 ul.flow2_main li dl dd::before {
	display: block;
	top: 10px;
	left: 0;
	font-family: 'Material Icons';
	content: '\e5df';
	position: absolute;
	font-size: 20px; font-size: 2rem;
}
.flowBox2 ul.flow2_main li::before {
	display: block;
	top: calc(100% + 15px);
	left: calc(50% - 15px);
	font-family: 'Material Icons';
	content: '\ead0';
	position: absolute;
	font-size: 40px; font-size: 4rem;	
}
.flowBox2 ul.flow2_main li:last-child::before { display: none; }

@media print, screen and (min-width: 750px) {
.flowBox2 {
	width: 750px;
	display: flex;
}
.flowBox2 ul.flow2_main { width: 700px; }
.flowBox2 ul.flow2_main li { width: 600px; }
.flowBox2 ul.flow2_main li dl { width: 500px; }
}

/* .flowBox3
------------------------------------------------------------ */
.flowBox3 {
	width: calc(100vw - 20px);
}
.flowBox3 dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
}
.flowBox3 dl dt {
	line-height: 150px;
	color: #fff;
	font-weight: bold;
	font-size: 18px; font-size: 1.8rem;
	background: #FAAD12;
	border-radius: 75px;
	margin-bottom: 40px;
	text-align: center;
	width: 150px; height: 150px;
	position: relative;
}
.flowBox3 dl dt::before {
	display: block;
	position: absolute;
	content: "▼";
	color: #FFE160;
	font-size: 20px; font-size: 2rem;
	bottom: -95px; left: 65px;
	
}
.flowBox3 dl dt.flow_follow::before { display: none; }
.flowBox3 dl dd {
	padding: 1rem;
	line-height: 1.75em;
	color: #333;
	font-size: 16px; font-size: 1.6rem;
	margin-bottom: 2rem;
	box-sizing: border-box;
	display: table-cell;
	vertical-align: middle;
	width: calc(100vw - 40px - 150px);
}
.flowBox3 dl dt.flow_follow {
	line-height: 1.5em;
	padding: 36px 0;
}
@media print, screen and (min-width: 750px) {
.flowBox3 { width: 750px; }
.flowBox3 dl dd { width: 500px; }
}
/* .pagemap
------------------------------------------------------------ */
.pagemap {
	width: calc(100vw - 20px);
	margin: 0 10px 15px 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.pagemap div {
	font-size: 18px; font-size: 1.8rem;
	line-height: 1.6em;
	background: #fff;
	width: 90%;
	max-width: 360px;
	margin-bottom: 15px;
	box-sizing: border-box;
	border: solid 1px #ccc;
}
.pagemap div p {}
.pagemap div p a {
	display: block;
	padding: 20px 15px 20px 30px;
	position: relative;
	color: #fff;
}
.pagemap div p a::before {
	font-family: 'Material Icons';
	content: "\e5cc";
	position: absolute;
	display: block;
	width: 30px;
	height: 100%;
	left: 0; top: 3px;
	color: #fff;
	text-align: center;
	line-height: 60px;
}

.pagemap div p a:link, .pagemap div p a:visited {
	color: #fff;
}
.pagemap div p a:hover, .pagemap div p a:active {
	color: #fff;
	opacity: 0.8;
}
.pagemap ul {
	margin: 0;
	padding: 0;
}
.pagemap ul li {
	font-size: 16px; font-size: 1.6rem;
	padding: 15px 8px 15px 35px;
	border-top: 1px dashed #ccc;
}
.pagemap ul li:first-child { border-top: none; }
.pagemap ul li a {
	position: relative;
}
.pagemap ul li a::before {
	font-family: 'Material Icons';
	content: "\e887";
	position: absolute;
	display: block;
	top: -4px; left: -20px;
}
.pagemap ul li a:link, .pagemap ul li a:visited {
	color: #333;
	text-decoration: none;
}
.pagemap ul li a:hover, .pagemap ul li a:active {
	color: #037AEA;
	text-decoration: underline;
}

@media print, screen and (min-width: 770px) {
.pagemap {
	width: 750px;
	margin: 0 auto 15px auto;
}
.pagemap div {
	width: 360px;
}
}

/* .pagemap
------------------------------------------------------------ */
#pagemap_2023 {
	width: calc(100vw - 20px);
	margin: 0 10px 25px 10px;
	border: solid 2px;
}
#pagemap_2023 > span {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	padding: 15px;
	color: #fff;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 18px; font-size: 1.8rem;
}
#pagemap_2023 div {
	font-size: 16px; font-size: 1.6rem;
}
#pagemap_2023 .collumn_p, #pagemap_2023 .collumn_c {
	box-sizing: border-box;
}
#pagemap_2023 div p { display: none; }
#pagemap_2023 input { display: none; }
#pagemap_2023 label {
	width: 90%;
	margin: 0 auto 10px auto;
	border-bottom: solid 1px;
	padding: 10px 15px 10px 30px;
	position: relative;
	line-height: 1em;
	font-weight: bold;
	display: block;
}
#pagemap_2023 label:before {
	font-family: 'Material Icons';
	content: '\e5cf';
	position: absolute;
	display: block;
	left: 8px; top: 8px;
	font-weight: normal;
}
#pagemap_2023 .index_sp:checked + label:before {
	transform: rotate(180deg);
}
#pagemap_2023 div ul {
	height: 0;/*高さを0に*/
	padding: 0;/*余白を0に*/
	overflow: hidden;/*非表示に*/
	opacity: 0;/*中身を透明に*/
	transition: 0.8s;/*クリック時の動きを滑らかに*/
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 90%;
	margin: 0 auto 15px auto;
}
#pagemap_2023 .index_sp:checked + label + ul {
	height: auto;
	opacity: 1;
}
#pagemap_2023 div ul li { width: 100%; }
#pagemap_2023 div ul li a {
	display: block;
	position: relative;
	padding: 6px 12px 6px 24px;
}
#pagemap_2023 div ul li a::before {
	content: "-";
	position: absolute;
	display: block;
	font-weight: bold;
	color: #ccc;
	left: 12px; top: 5px;
}
#pagemap_2023 a:link, #pagemap_2023 a:visited {
	text-decoration: none;
	color: #333;
}
#pagemap_2023 a:hover, #pagemap_2023 a:active {
	text-decoration: underline;
	color: #333;
}

@media only screen and (min-width: 770px){
#pagemap_2023 {
	width: 700px;
	margin: 0 auto 50px auto;
}
#pagemap_2023 label { display: none; }
#pagemap_2023 .collumn_p{ display: flex; }
#pagemap_2023 .collumn_c { width: 50%; }
#pagemap_2023 div p {
	width: 90%;
	margin: 0 auto 10px auto;
	border-bottom: solid 1px;
	padding: 10px 15px 10px 30px;
	display: block;
}
#pagemap_2023 div p a {
	position: relative;
	line-height: 1em;
	font-weight: bold;
}
#pagemap_2023 div p a:before {
	font-family: 'Material Icons';
	content: "\e5cc";
	position: absolute;
	display: block;
	left: -26px; top: 1px;
	color: #fff;
	font-weight: normal;
}
#pagemap_2023 div ul {
	height: auto;
	opacity: 1;
	transition: none;
}
#pagemap_2023 div ul li { width: 100%; }
}

/* .pagemap_Img
------------------------------------------------------------ */
.pagemap_Img {}
.pagemap_Img div span {
	position: relative;
	display: block;
}
.pagemap_Img div img { }
.pagemap_Img div p {
	position: absolute;
	bottom: 0;
	width: 100%;
}

@media print, screen and (min-width: 770px) {

}

/* .link
------------------------------------------------------------ */
.link {
	width: calc(100vw - 20px);
	margin: 0 10px 25px 10px;
	border: solid 1px #ee7a0c;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.link_col1 {
	min-width: 300px;
}
.link_col1 img {
	margin, padding: 0;
	width: 100%;
}
.link_col1 p {
	width: 100%;
	padding: 10px 20px;
	font-size: 20px; font-size: 2rem;
	background: #ee7a0c;
	color: #fff;
}
.link_col1 p span {
	font-size: 12px; font-size: 1.2rem;
}
.link_col1 dl {
	font-size: 16px; font-size: 1.6rem;
	line-height: 1.5em;
}
.link_col1 dt {
	border-bottom: 1px solid #ee7a0c;
	font-weight: bold;
	padding: 10px;
}
.link_col1 dd {
	padding: 10px;
}
.link_col2 {
	min-width: 300px;
}
.link_col2 p {
	width: 100%;
	padding: 10px;
	font-size: 16px; font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5em;
	margin-bottom: 15px;
	border-bottom: 1px solid #ee7a0c;
}
.link_col2 ul {
	padding: 0 15px;
	margin-bottom: 15px;
	line-height: 1.75em;
	color: #333;
	font-size: 16px; font-size: 1.6rem;
}
.link_col2 ul li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 15px;
}
.link_col2 ul li::before {
	display: block;
	font-family: 'Material Icons';
	position: absolute;
	font-size: 18px; font-size: 1.8rem;
	content: '\e5cc';
	left: 4px;
	top: 0;
}

@media only screen and (min-width: 640px) and (max-width: 769px){
.link {
	flex-wrap: nowrap;
}
.link_col2 {
	width: 300px;
}
}
@media print, screen and (min-width: 770px) {
.link {
	margin: 0 auto 25px auto;
	width: 750px;
}
.link_col1 {
	width: 440px;
}
.link_col2 {
	width: 300px;
}
}

/* .credit
------------------------------------------------------------ */
ul.credit {
	padding: 0;
	margin: 0 10px 25px 10px;
	line-height: 1.75em;
	color: #333;
	font-size: 16px; font-size: 1.6rem;
}
ul.credit li {
	position: relative;
	padding-left: 26px;
	margin-bottom: 15px;
}
ul.credit li::before  {
	display: block;
	font-family: 'Material Icons';
	position: absolute;
	font-size: 18px; font-size: 1.8rem;
	content: '\e7fd';
	color: #df840d;
	left: 0;
	top: 0;
}
.credit span {
	font-size: 14px; font-size:1.4rem;
	display: block;
}
@media print, screen and (min-width: 770px) {
ul.credit {
	margin: 0 25px 25px 25px;
}
ul.credit li {
	width: 340px;
	display: inline-block;
}
}

/* #main > #innavi
------------------------------------------------------------ */
#innavi ul {
	text-align: center;
	margin-bottom: 10px;
}
#innavi ul li {
	display: inline-block;
	font-size: 14px; font-size: 1.4rem;
}
#innavi ul li a {
	padding: 0 10px;
	display: block;
	text-align: center;
	line-height: 2em;
	border-right: 1px solid #ccc;
}
#innavi ul li:last-child a { border-right: none; }

/* #main > .icon_faq
------------------------------------------------------------ */
.faq_q {
	display: flex;
	width: 100vw;
	overflow: hidden;
	padding: 0;
	margin: 0 0 25px 0;
	position: relative;
}
.faq_q span:first-child {
	display: block;
	color: #fff;
	font-size: 24px; font-size: 2.4rem;
	line-height: 50px;
	font-weight: bold;
	width: 50px;
	text-align: center;
	padding: 10px;
	box-sizing: border-box;
}
.faq_q p {
	width: calc(100vw - 50px);
	line-height: 30px;
	padding: 22px 12px;
	box-sizing: border-box;
	font-size: 24px; font-size: 2.4rem;
	font-weight: bold;
	color: #000;
}

@media print, screen and (min-width: 1000px) {
.faq_q {
	width: 1000px;
	margin: 0 auto 25px auto;
}
.faq_q span:first-child {
	width: 100px;
	line-height: 80px;
}
.faq_q p {
	width: 900px;
	line-height: 28px;
	padding: 36px 26px 36px 50px;	
}
}

/* #main > .voice
------------------------------------------------------------ */
.voice { margin-bottom: 25px; }
.voice_balloon {
	position: relative;
	display: inline-block;
	padding: 10px 15px;
	width: calc(100% - 20px);
	margin: 0 10px;
	min-width: 115px;
	line-height: 40px;
	background: #F6F6F6;
	border: 2px solid #19283C;
	z-index: 0;
	border-radius: 10px;
	line-height: 1.5em;
	font-size: 16px; font-size: 1.6rem;
	box-sizing: border-box;
}
.voice_balloon::before {
	content: "";
	position: absolute;
	bottom: -8px; left: 90%;
	margin-left: -9px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 9px 0 9px;
	border-color: #F6F6F6 transparent transparent transparent;
	z-index: 0;
}
.voice_balloon::after {
	content: "";
	position: absolute;
	bottom: -12px; left: 90%;
	margin-left: -10px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #19283C transparent transparent transparent;
	z-index: -1;
}
.voice_balloon span {
	display: block;
	padding: 10px 0;
	font-weight: bold;
}
.voice_person { text-align: right; }
.voice_person img {
	width: 100px;
	height: 120px;
	margin-right: 10px;
}
.voice_r, .voice_l {
	display:flex;
	flex-wrap: wrap;
	margin-botton: 10px;
}
.voice_r { justify-content: flex-start; }
.voice_l { justify-content: flex-end; }
.voice_r_balloon, .voice_l_balloon {
	position: relative;
	display: block;
	padding: 10px 15px;
	width: calc(100% - 20px);
	margin: 0 10px;
	min-width: 115px;
	line-height: 40px;
	background: #F6F6F6;
	border: 2px solid #19283C;
	z-index: 0;
	border-radius: 10px;
	line-height: 1.5em;
	font-size: 16px; font-size: 1.6rem;
	box-sizing: border-box;
}
.voice_r_balloon::before, .voice_l_balloon::before {
	content: "";
	position: absolute;
	margin-left: -9px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 9px 0 9px;
	border-color: #F6F6F6 transparent transparent transparent;
	z-index: 0;
}
.voice_r_balloon::before {
	bottom: -8px; left: 10%;
}
.voice_l_balloon::before {
	bottom: -8px; left: 90%;
}
.voice_r_balloon::after, .voice_l_balloon::after {
	content: "";
	position: absolute;
	margin-left: -10px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #19283C transparent transparent transparent;
	z-index: -1;
}
.voice_r_balloon::after {
	bottom: -12px; left: 10%;
}
.voice_l_balloon::after {
	bottom: -12px; left: 90%;
}
.voice_r_person img, .voice_l_person img {
	width: 100px;
	height: 120px;
	margin-right: 10px;
}
.voice_balloon p, .voice_r p, .voice_l p { margin-bottom: 0; }

@media print, screen and (min-width: 770px) {
.voice {
	width: 720px;
	margin: 0 auto 25px auto;
	padding: 0;
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display:-webkit-flex;/*--- safari（PC）用 ---*/
	display: flex;
	-webkit-box-pack: justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack: justify;/*--- IE10 ---*/
	-webkit-justify-content: space-between;/*--- safari（PC）用 ---*/
	justify-content: space-between;
	-webkit-box-align: center;/*--- Androidブラウザ用 ---*/
	-ms-flex-align: center;/*--- IE10 ---*/
	-webkit-align-items: center;/*--- safari（PC）用 ---*/
	align-items: center;
}
.voice_balloon {
	width: 550px;
	margin-right: 12px;
	padding: 10px 0;
}
.voice_balloon::before {
	content: "";
	position: absolute;
	top: 50%; left: auto; right: -8px;
	margin-top: -9px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 0 9px 9px;
	border-color: transparent transparent transparent #F6F6F6;
	z-index: 0;
}
.voice_balloon::after {
	content: "";
	position: absolute;
	top: 50%; left: auto; right: -12px;
	margin-top: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #19283C;
	z-index: -1;
}
.voice_balloon span, .voice_l_balloon span, .voice_r_balloon span {
	display: block;
	padding: 2px 0;
	font-weight: bold;
}
.voice_person img {
	width: 150px;
	height: 180px;
}
.voice_r, .voice_l {
	flex-wrap: nowrap;
	width: 720px;
	margin: 0 auto;
	padding: 0;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0;
}
.voice_r { flex-direction: row-reverse; }
.voice_r_balloon, .voice_l_balloon {
	width: 550px;
	margin-right: 12px;
	padding: 10px 0;
}
.voice_l_balloon::before {
	content: "";
	position: absolute;
	top: 50%; left: auto; right: -8px;
	margin-top: -9px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 0 9px 9px;
	border-color: transparent transparent transparent #F6F6F6;
	z-index: 0;
}
.voice_l_balloon::after {
	content: "";
	position: absolute;
	top: 50%; left: auto; right: -12px;
	margin-top: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #19283C;
	z-index: -1;
}
.voice_r_balloon::before {
	content: "";
	position: absolute;
	top: 50%; left: 0;
	margin-top: -9px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 9px 9px 0;
	border-color: transparent #F6F6F6 transparent transparent;
	z-index: 0;
}
.voice_r_balloon::after {
	content: "";
	position: absolute;
	top: 50%; left: -2px;
	margin-top: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 10px 10px 0;
	border-color: transparent #19283C transparent transparent;
	z-index: -1;
}
.voice_l_person img, .voice_r_person img {
	width: 150px;
	height: 180px;
}

}

/* #main > #page_navi2
------------------------------------------------------------ */
#page_navi2 {
	margin: 0 auto 50px auto;
	font-size: 14px; font-size: 1.4rem;
	position: relative;
	width: 300px;
	height:40px;
	z-index: 1;
}
#page_navi2 a {
	display: block;
	position: absolute;
} 
#page_navi2 a span{
	display: table-cell;
	vertical-align: middle;
	line-height: 1.2em;
	height:40px;
}
#page_navi2 .prev {
	width: 111px;
	text-align: left;
	padding: 0 8px;
	left: 19px;
	box-sizing: border-box;
	background: #fff;
}
#page_navi2 .next {
	width: 111px;
	text-align: right !important;
	padding: 0 8px;
	right: 19px;
	box-sizing: border-box;
	background: #fff;
}
#page_navi2 .home {
	width: 42px;
	box-sizing: border-box;
	padding: 0 8px;
	left: 129px;
	background: #fff;
}
#page_navi2 .home i {
	padding-right: 6px;
	color: #999;
}
#page_navi2 a.prev:before, #page_navi2 a.prev:after, #page_navi2 a.next:before, #page_navi2 a.next:after {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 10px;
	width: 29px;
	height: 29px;
	margin-top: -5px;
	z-index: -1;
}
#page_navi2 a.prev:before {
	left: -16px;
	background: #999;
}
#page_navi2 a.prev:after {
	left: -12px;
	background: #fff;
}
#page_navi2 a.next:before {
	right: -16px;
	background: #999;
}
#page_navi2 a.next:after {
	right: -12px;
	background: #fff;
}
#page_navi2 .pc { display: none; }
#page_navi2 .sp { display: block; }

#page_navi2 a.home:hover, #page_navi2 .home:hover i { color: #037AEA;}
#page_navi2 a.prev:hover::before, #page_navi2 a.next:hover::before { background: #037AEA; }
#page_navi2 a.prev:hover, #page_navi2 a.next:hover, 
#page_navi2 .home:hover, #page_navi2 a.prev:hover::after, 
#page_navi2 a.next:hover::after { background: #cdf9ff; }

@media print, screen and (min-width: 750px) {
#page_navi2 { width: 710px; height:40px; }
#page_navi2 .prev,  #page_navi2 .next { width: 240px; }
#page_navi2 .home {
	width: 200px;
	left: 250px;
	border-left:1px solid #999;
	border-right:1px solid #999;
}
#page_navi2 .pc { display: block; }
#page_navi2 .sp { display: none; }

}

/* #sitemap
------------------------------------------------------------ */
#sitemap .txtBox > ul {
	padding: 0;
	margin: 0 10px 25px 10px;
	line-height: 1.75em;
	color: #333;
	font-size: 16px; font-size: 1.6rem;
}
#sitemap .txtBox > ul > li {
	position: relative;
	width: 100%;
	box-sizing: border-box;
}
#sitemap .txtBox > ul > li::before {
	display: block;
	font-family: 'Material Icons';
	position: absolute;
	font-size: 18px; font-size: 1.8rem;
	content: '\e5cc';
	left: 0;
	top: 0;
	color: #df840d;
}
#sitemap .txtBox ul li a {
	display: block;
	padding-left: 20px;
}
#sitemap .txtBox ul li ul { padding: 5px 5px 0 5px; }
#sitemap .txtBox ul li ul li {
	position: relative;
}
#sitemap .txtBox ul li ul li::before {
	display: block;
	font-family: 'Material Icons';
	position: absolute;
	font-size: 18px; font-size: 1.8rem;
	content: '\e15b';
	left: 0;
	top: 0;
	color: #ccc;
}
@media print, screen and (min-width: 770px) {
#sitemap .txtBox > ul {
	margin: 25px;
	display: flex;
	flex-wrap: wrap;
}
#sitemap .txtBox > ul > li {
	width: 50%;
	box-sizing: border-box;
	flex-grow: 1;
}
#sitemap .txtBox > ul > li._list {
	width: 100%;
	flex-grow: 2;
}
#sitemap .txtBox ul li ul {
	display: flex;
	flex-wrap: wrap;
}
#sitemap .txtBox ul li ul li {
	width: calc(100% / 3);
	box-sizing: border-box;
}
}