@charset "utf-8";
/* CSS Document */
html {
	font-size: 62.5%; /*フォントの基準サイズを10pxにする*/
	background: #EEEEEE;
}
body {
	z-index: 0;
	background: #fff;
}
.container {
	margin: 0 auto;
	padding: 10px
}
.container:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
img {
	max-width: 100%;
}

@media (max-width: 750px) {
body {
	font-size: 1.4rem; /*全体のフォントサイズは14pxとする*/
	-webkit-text-size-adjust: 100%; /*スマホでPC表示した際に勝手に文字が大きくなるのを防ぐ*/
}
.hidden_sp {
	display: none;
}
}

@media (min-width: 751px) {
body {
	font-size: 1.8rem; /*全体のフォントサイズは16pxとする*/
	min-width: 1024px;
	padding: 0;
}
.container {
	width: 1024px;
	min-width: 1024px;
}
.hidden_pc {
	display: none;
}
}

/*****************************************
#header
*****************************************/
@media (max-width: 750px) {
#header {
	background-color: #FFF;
	text-align: left;
}
#header > div {
	padding: 10px;
	text-align: left;
}
#header h1 {
	max-width: 75%;
}
}

@media (min-width: 751px) {
#header {
	background-color: #FFf;
	border-radius: 10px;
}
#header .headWrap {
	background-image: url(../img/header_bgPC.jpg);
	background-repeat: no-repeat;
	background-position: left 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 80px;
}
#header .headWrap .companyName {
	text-align: left;
}
#header .headWrap h1 {
	font-size: 1.2rem;
}
#header .headWrap img {
	height: 50px;
}
#header .headWrap .headContact {
	height: 80px;
}
#header .headWrap .headContact ul {
	display: table;
	height: 80px;
	table-layout: fixed;
	vertical-align: middle;
}
#header .headWrap .headContact ul li {
	display: table-cell;
	height: 80px;
	vertical-align: middle;
	padding-left: 20px;
}
#header .headWrap .headContact ul li a {
	font-size: 1.2rem;
	text-align: right;
}
}
/***************************
スマホのアコーディオンナビの中身
****************************/
.sp_navi {
	z-index: 99998;
}
.sp_navi .sp_navi_head {
	height: 50px;
	background-color: rgba(30,30,30,1.00);
	display: table;
	width: 100%;
	text-align: left;
	color: #fff;
}
.sp_navi .sp_navi_head > div {
	display: table-cell;
	vertical-align: middle;
	padding: 5px 50px 5px 15px;
	font-size: 1.2rem;
	line-height: 1.2;
	background-color: rgba(30,30,30,1.00);
}
.sp_navi .menu_conts {
	min-height: 500px;
	padding: 15px;
}
.sp_navi .menu_conts ul.globalNavi {
	background-color: #FFF;
	border-radius: 8px;
	margin-bottom: 10px;
}
.sp_navi .menu_conts ul.globalNavi li {
	border-bottom: 1px solid #cb0000;
	text-align: left;
}
.sp_navi .menu_conts ul.globalNavi li:last-child {
	border-bottom: none;
}
.sp_navi .menu_conts ul.globalNavi li a {
	display: block;
	padding: 8px 20px 8px 1em;
	background-image: url(../img/sp_navi_arrow.png);
	background-position: right center;
	background-repeat: no-repeat;
}
.sp_navi .menu_conts ul.imageNavi li {
	margin-bottom: 5px;
}
.sp_navi .menu_conts ul.globalNavi li dl.submenu dt {
	padding: 8px 20px 8px 1em;
	background-image: url(../img/hiraku.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 20px;
}
.sp_navi .menu_conts ul.globalNavi li dl.submenu dt.hiraku {
	background-image: url(../img/tojiru.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 20px;
	border-bottom: 1px dotted #cb0000;
}
.sp_navi .menu_conts ul.globalNavi li dl.submenu dd li {
	border-bottom: 1px dotted #cb0000;
	padding-left: 20px;
}
.sp_navi .menu_conts ul.globalNavi li dl.submenu dd li:last-child {
	border-bottom: none;
}
.submenu dd {
	display: none;
}
.sp_navi .menu_conts .member li{
	display: block;
	margin-bottom: 10px;
	border-radius: 10px;
}
.sp_navi .menu_conts .member li a{
	color: #FFF;
    padding: 10px;
    display: block;
}
.sp_navi .menu_conts .member li:first-child{
	border: 1px solid #FFF;
}
.sp_navi .menu_conts .member li:last-child{
	background: rgba(74,74,74,1.00);
}
@media (min-width: 751px) {
#navi {
	color: #FFF;
}
#navi .container {
	position: relative；
}
#navi .container .gNavi {
	background-color: #CB0000;
	border-radius: 10px;
	height: 60px;
	color: #FFF;
	position: absolute;
	z-index: 9999;
	width: 1024px;
	box-shadow: -1px 2px 2px 0px #5e0101;
}
#navi .gNavi ul li {
	display: inline-block;
}
#navi .gNavi ul li a {
	display: inline-block;
	color: #FFF;
	line-height: 60px;
	padding: 0 20px;
}
#navi .gNavi ul li a:hover {
	background-color: rgba(102,102,102,0.3);
}
}
/***************************
footer
****************************/
#footer {
	background: #EEEEEE;
	margin: 0;
	padding-top: 30px;
}

@media (min-width: 751px) {
#footer .foot_menu {
	float: left;
	width: 60%;
}
#footer .foot_menu ul {
	float: left;
	width: 50%;
	text-align: left;
}
#footer .foot_menu ul li a {
	margin: 5px;
	font-size: 1.4rem;
}
#footer .foot_menu ul li:before {
	font-family: "Font Awesome 5 Free";
	content: "\f0a9";
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	font-size: 1.5rem;
	text-rendering: auto;
	font-weight: 700;
	color: #cb0000;
}
#footer .foot_menu ul li.sub:before {
	font-family: "Font Awesome 5 Free";
	content: "\f054";
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	font-size: 0.8rem;
	text-rendering: auto;
	font-weight: 700;
	color: #cb0000;
}
#footer .foot_menu ul li.sub {
	padding-left: 20px;
}
#footer .foot_logo {
	float: right;
	width: 30%;
}
#footer .foot_logo .entry a {
	padding: 20px;
	margin-bottom: 20px;
	    border: 1px solid #b0b0b0f7;
    color: rgba(69,69,69,1.00);
    display: block;
    border-radius: 5px;
    background: #e2e2e2;
}
	#footer .foot_logo .entry a:hover{
		color: #FFF;
		background: #cb0000;
		border: 1px solid #cb0000;
		text-decoration: none;
	}
#footer .copyright {
	text-align: right;
	margin: 20px 0;
	font-size: 1.2rem;
}
}

@media (max-width: 750px) {
#footer .foot_logo {
	float: none;
}
#footer .foot_logo .entry a {
	padding: 20px;
	margin-bottom: 10px;
	border: 1px solid #b0b0b0f7;
    color: rgba(69,69,69,1.00);
    border-radius: 5px;
    background: #e2e2e2;
	display: inline-block;
}
#footer .foot_logo img {
	width: 60%;
}
#footer .copyright {
	text-align: center;
	margin: 20px 0;
	font-size: 1.2rem;
}
}
/* スクロールTOP */
#pageTop {
	position: fixed;
	z-index: 9998;
}
#pageTop img {
}

@media (max-width: 750px) {
#pageTop {
	bottom: 5px;
	left: 0px;
}
#pageTop img {
	max-width: 50px;
}
}

@media (min-width: 751px) {
#pageTop {
	bottom: 0px;
	right: 0px;
}
}
/* Yutube　のレスポンシブ */
.video_wrap, .gmap_wrap {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.video_wrap iframe, .gmap_wrap iframe, .gmap_wrap object, .gmap_wrap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/*****************************************
スマホでのテーブルFullWidth
*****************************************/
.table_sp th {
	background-color: #F2F2F2;
}
.table_sp td {
	background-color: #FFFFFF;
}

@media (max-width: 750px) {
.table_sp, .table_sp caption, .table_sp tbody, .table_sp thead, .table_sp tfoot, .table_sp tr, .table_sp th, .table_sp td {
	display: block;
}
.table_sp {
	border-left: 1px solid #CCC;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	margin-bottom: 5px;
	margin-bottom: 20px;
}
.table_sp caption {
	border-top: 1px solid #CCC;
	padding: 5px;
	background-color: #E2E2E2;
}
.table_sp th {
	border-top: 1px solid #CCC;
	padding: 5px;
}
.table_sp td {
	border-top: 1px solid #CCC;
	padding: 5px;
}
}

@media (min-width: 751px) {
.table_sp {
	margin: 0 auto 10px;
	width: 100%;
	margin-bottom: 20px;
}
.table_sp tr th {
	padding: 10px;
	border: 1px solid #CCC;
}
.table_sp tr td {
	padding: 10px;
	border: 1px solid #CCC;
}
}
/***********************************
rowsシリーズ
div.rows　入れ子のulにクラス名を入れる
***********************************/
.rows {
	margin-bottom: 30px;
}
.rows ul:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
/* PC2カラム、SP2カラム */
.rows ul.col2 > li {
	float: left;
	width: 50%;
}
.rows ul.col2 > li:nth-child(2n+1) {
	clear: both;
}
/* PC3カラム、SP3カラム */
.rows ul.col3 > li {
	float: left;
	width: 33.3%;
}
.rows ul.col3 > li:nth-child(3n+1) {
	clear: both;
}
/* PC4カラム、SP4カラム */
.rows ul.col4 > li {
	float: left;
	width: 25%;
}
.rows ul.col4 > li:nth-child(4n+1) {
	clear: both;
}

@media (max-width: 750px) {
.rows ul > li > div {
	padding: 5px;
}
}

@media (min-width: 751px) {
.rows ul > li > div {
	padding: 8px;
}
}

/* PC2カラム、SP上下 */
@media (max-width: 750px) {
.rows ul.col2_1 > li > div {
	margin-bottom: 5px;
}
}

@media (min-width: 751px) {
.rows ul.col2_1 > li {
	float: left;
	width: 50%;
}
.rows ul.col2_1 > li:nth-child(2n+1) {
	clear: both;
}
}

/* PC3カラム、SP上下 */
@media (max-width: 750px) {
.rows ul.col3_1 > li > div {
	margin-bottom: 5px;
}
}

@media (min-width: 751px) {
.rows ul.col3_1 > li {
	float: left;
	width: 33.3%;
}
.rows ul.col3_1 > li:nth-child(3n+1) {
	clear: both;
}
}

/* PC3カラム、2カラム */
@media (max-width: 750px) {
.rows ul.col3_2 > li {
	float: left;
	width: 50%;
}
.rows ul.col3_2 > li:nth-child(2n+1) {
	clear: both;
}
}

@media (min-width: 751px) {
.rows ul.col3_2 > li {
	float: left;
	width: 33.3%;
}
.rows ul.col3_2 > li:nth-child(3n+1) {
	clear: both;
}
}

/* PC4カラム、2カラム */
@media (max-width: 750px) {
.rows ul.col4_2 > li {
	float: left;
	width: 50%;
}
.rows ul.col4_2 > li:nth-child(2n+1) {
	clear: both;
}
}

@media (min-width: 751px) {
.rows ul.col4_2 > li {
	float: left;
	width: 25%;
}
 .rows ul.col4_2 > li:nth-chil(4n+1) {
 clear: both;
}
}

/* PC3カラム、1-2カラム */
@media (max-width: 750px) {
.rows ul.col3_1-2 > li {
	float: left;
	width: 50%;
}
.rows ul.col3_1-2 > li:nth-child(3n+1) {
	width: 100%;
}
.rows ul.col3_1-2 > li:nth-child(3n+1) > div {
	width: 50%;
	margin: 0 auto;
}
}

@media (min-width: 751px) {
.rows ul.col3_1-2 > li {
	float: left;
	width: 33.3%;
}
.rows ul.col3_1-2 > li:nth-child(3n+1) {
	clear: both;
}
}

/* PC3カラム、2-1カラム */
@media (max-width: 750px) {
.rows ul.col3_2-1 > li {
	float: left;
	width: 50%;
}
.rows ul.col3_2-1 > li:nth-child(3n+0) {
	width: 100%;
}
.rows ul.col3_2-1 > li:nth-child(3n+0) > div {
	width: 50%;
	margin: 0 auto;
}
.rows ul.col3_2-1 > li:nth-child(3n+1) {
	clear: both;
}
}

@media (min-width: 751px) {
.rows ul.col3_2-1 > li {
	float: left;
	width: 33.3%;
}
.rows ul.col3_2-1 > li:nth-child(3n+1) {
	clear: both;
}
}

/* .breadcrumb  */
@media (min-width: 751px) {
.breadcrumb {
	text-align: left;
	font-size: 1.2rem;
	padding: 5px 0;
	margin-bottom: 20px;
}
.breadcrumb ul {
}
.breadcrumb ul li {
	display: inline-block;
	font-size: 1.2rem;
}
.breadcrumb ul li a:after {
	content: ">";
	padding: 0 0.5em;
}
}

@media (max-width: 750px) {
.breadcrumb {
	display: none;
}
}

/***********************************
セカンドメインタイトル
***********************************/
@media (min-width: 751px) {
.TitleMain {
	background: url(../img/baseTitlebg.jpg) no-repeat 50% 0;
	background-size: cover;
	padding: 50px 0 30px 0;
	margin: 20px auto 0;
}
.TitleMain h2 {
	font-size: 2rem;
	color: #FFF;
	font-weight: bold;
	margin: 30px auto;
}
}

@media (max-width: 750px) {
.TitleMain {
	background: url(../img/baseTitlebg.jpg) no-repeat 50% 0;
	background-size: cover;
}
.TitleMain h2 {
	font-size: 2rem;
	color: #FFF;
	font-weight: bold;
	margin: 20px auto;
}
}
.BTNred {
	display: flex;
	padding: 0;
	clear: both;
}
.BTNred a {
	padding: 15px 30px;
	color: #FFF;
	background: #cb0000;
	font-weight: 900;
	display: inline-flex;
	margin: 20px auto;
	font-size: 1.5rem;
}
.BTNred a:hover {
	padding: 15px 30px;
	color: #FFF;
	text-decoration: none;
	background: #cb000094;
	display: inline-flex;
}
.BTNred a:after {
	font-family: "Font Awesome 5 Free";
	content: "\f061";
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	font-weight: 900;
	color: #FFF;
	padding-left: 20px;
}
