﻿/*---------------------------------------------------------------------
 下層見出しタイトル ＋ 汎用レイアウト
---------------------------------------------------------------------*/


/* コンテンツエリア */


/* メインカラム */
#mainCol {
}



/* サイドカラム*/
#sideCol {
}
#sideCol a {
}



/* オートリンク */
.module {
}
#rightCol ul {
line-height: 1.2;
background: #fff;
/*
border-right: 2px solid #45ab40;
border-left: 2px solid #45ab40;
*/
}
#autolink {
font-weight: 600;
}
#manualLink {
font-weight: 600;
}
.lv0 {
margin-bottom: 2px;
padding-top: 10px;
padding-bottom: 10px;
padding-left: 10px;
padding-right: 10px;
text-align: center;
font-size: 100%;
background: #e9d7ac;
/*border: 1px solid #ccc;*/
border-radius: 5px 5px 0 0;
}
.lv1,
.lv2,
.lv3 {
position: relative;
margin-bottom: 2px;
background: #fff;
/*
border-right: 1px solid #ccc;
border-left: 1px solid #ccc;
border-bottom: 1px solid #ccc;
*/
}
.lv1::before {
position: absolute;
top: 9px;
left: 14px;
content: "\f103" !important;
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ccc;
}
.lv1 a {
padding-top: 12px;
padding-bottom: 12px;
display: block;
padding-left: 30px;
padding-right: 10px;
font-size: 100%;
line-height: 1.2;
}
.lv1 a:hover,
.lv2 a:hover,
.lv3 a:hover {
background: #eee;
transition: background 0.5s;
}
.lv1 i {
margin-right: 5px;
}
.lv1:nth-of-type(1) {
margin-top: 0;
}
.lv2 {
position: relative;
font-size: 90%;
}
.lv2::before {
position: absolute;
top: 7.5px;
left: 16px;
content: "\f105" !important;
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ccc;
}
.lv2 a {
display: block;
padding-top: 12px;
padding-bottom: 12px;
padding-left: 30px;
padding-right: 10px;
font-size: 87.5%;
line-height: 1.4;
}
.lv2 i {
margin-right: 5px;
color: #088888;
}
.lv3 {
}
.lv3::before {
}
.lv3 a {
display: block;
padding-top: 12px;
padding-bottom: 12px;
padding-left: 30px;
padding-right: 10px;
font-size: 81.3%;
line-height: 1.4;
}
.lv3 i {
margin-right: 5px;
}



/* サイドバナー */
.sideBnr {
padding-top: 40px;
padding-bottom: 10px;
}
.sideBnr + .sideBnr {
padding-top: 0px;
}
.sideBnr img {
max-width: 100%;
height: auto;
display: block;
margin: auto;
}
.sideBnr p {
}
.sideBnr a {
width: 100%;
padding: 30px 10px 30px 60px;
background-color: #8b4930;
font-size: 120%;
font-weight: bold;
line-height: 1.2;
letter-spacing: 2px;
text-align: center;
color: #fff;
background-image: url(../img/head_ico2.png);
background-repeat: no-repeat;
background-position: left 20px center;
border-radius: 5px;
}





/*---------------------------------------------------------------------
 見出しタイトル
---------------------------------------------------------------------*/
#ttlBnr {
width: 100%;
position: relative;
margin-right: auto;
margin-left: auto;
padding-top: 100px;
background: #eee;
}
@media screen and (max-width: 1300px) {
	#ttlBnr {
	}
	
	#ttlBnr::before {
	}
}
.ttlContainer {
position: relative;
width: 1920px;
margin-right: auto;
margin-left: auto;
}
@media screen and (max-width: 1300px) {
/*
	.ttlContainer2 {
	top: 10px !important;
	transform: translateX(-50%) !important;
	-webkit- transform: translateX(-50%) !important;
*/
	}
}
#ttlBnr .ttlImg {
}
#ttlBnr .ttlImg img {
display: block;
max-width: 100%;
width: 100%;
margin: auto;
}
.ttlContainer2 {
position: absolute;
top: 50%;
left: 0;
right: 0;
margin: auto;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
padding: 0 50px;
color: #fff;
/*
background-color: rgba(255,255,255,0.4);
*/
}
.ttlIco {
position: relative;
margin-top: 10px;
margin-bottom: 40px;
}
.ttlIco::after {
position: absolute;
content: " ";
width: 80px;
height: 80px;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit-\ transform: translateY(-50%) translateX(-50%);
border-radius: 50%;
z-index: 9;
background: #fff;
}
.ttlIco img {
z-index: 99;
position: relative;
width: 50px !important;
height: auto !important;
}
#ttlBnr .sub {
display: inline-block;
margin-bottom: 10px;
padding: 8px 20px;
font-size: 50px;
font-weight: normal;
text-shadow: 0 0 10px #aaa;
letter-spacing: 10px;
line-height: 1;
text-shadow: 0 0 10px #000;
}
#ttlBnr h2 {
text-align: center;
font-size: 30px;
font-weight: bold;
text-shadow: 0 0 10px #000;
letter-spacing: 5px;
}
@media screen and (max-width: 2020px) {
	.ttlContainer {
	width: 100%;
	}
	#ttlBnr h2 {
	}
	.ttlIco {
	margin-bottom: 15px;
	}
	.ttlIco img {
	width: 30px !important;
	}
	.ttlIco::after {
	position: absolute;
	content: " ";
	width: 50px;
	height: 50px;
	}
	#ttlBnr .sub {
	}
	#ttlBnr h2 {
	}
}
@media screen and (max-width: 1920px) {
}
@media screen and (max-width: 1300px) {
	#ttlBnr h2 {
	}
	.ttlIco {
	}
}
@media screen and (max-width: 1100px) {
}



/*---------------------------------------------------------------------
 汎用レイアウト
---------------------------------------------------------------------*/
.low_unit01 {
position: relative;
padding-bottom: 60px;
padding-right: 15px;
padding-left: 15px;
}
.low_unit02 {
position: relative;
margin-bottom: 10px;
padding-right: 15px;
padding-left: 15px;
}
.low_unit03 {
position: relative;
padding-bottom: 40px;
}
.low_unit04 {
position: relative;
padding-bottom: 30px;
}
.low_unit05 {
position: relative;
padding-bottom: 50px;
padding-right: 5px;
padding-left: 5px;
}
.low_unit06 {
position: relative;
margin-top: -40px;
padding-bottom: 60px;
padding-right: 15px;
padding-left: 15px;
}
.low_unit07 {
position: relative;
margin-bottom: 20px;
padding-right: 15px;
padding-left: 15px;
}
.low_unit08 {
position: relative;
margin-top: -50px;
padding-bottom: 60px;
padding-right: 15px;
padding-left: 15px;
}



/* 見出し共通 */
h3,h4,h5,h6 {
line-height: 1.3;
}



/* headerFix対策 */
.anc {
display: block;
/*padding-top: 150px;
margin-top: -150px;*/
}



/* 大見出し_h3 */
.ttl_lv1 {
display: block;
margin-top: 150px;
margin-bottom: 60px;
text-align: center;
}
.ttl_lv1>div {
/*
padding: 50px 80px;
display: inline-block;
background-image: url(../img/h3BgR.png),url(../img/h3BgL.png);
background-position: right center,left center;
background-repeat: no-repeat;
*/
}
.ttl_lv1 h3 {
display: block;
position: relative;
/*margin-bottom: 20px;*/
margin-right: auto;
margin-left: auto;
padding-bottom: 40px;
padding: 10px 0;
font-size: 150%;
font-weight: bold;
letter-spacing: 2px;
/*
color: #000;
border-bottom: 15px solid #c5edc6;*/
}
.ttl_lv1 h3::before {
content: "";
width: 1px;
height: 80px;
position: absolute;
top: -80px;
left: 0;
right: 0;
margin: auto;
background-color: #848484;
}
.ttl_lv1 h3::after {
}
.ttl_lv1 .sub {
position: relative;
display: block;
margin-bottom: 0;
padding: 0;
font-size: 12px;
font-weight: normal;
letter-spacing: 2px;
line-height: 1;
color: #b60000;
}
/*
.ttl_lv1 p::before {
content: "―";
position: absolute;
left: 40px;
}
.ttl_lv1 p::after {
content: "―";
position: absolute;
right: 40px;
}
*/
.main section:first-of-type.ttl_lv1 {
margin-top: 0;
}



/* 中見出し_h4 */
.ttl_lv2 {
position: relative;
margin-top: 50px;
margin-bottom: 40px;
}
.ttl_lv2 h4 {
position: relative;
padding: 15px 24px;
font-size: 135%;
font-weight: bold;
text-align: center;
letter-spacing: 3px;
text-shadow: 0 0 10px #000;
color: #fff;
background: linear-gradient(to right,#171717,#8a8a8a,#8a8a8a,#171717);
/*
background-image: url(../img/h4_bg.png);
background-size: 100% auto;
background-repeat: repeat-y;
*/
}
/*
.ttl_lv2 h4::before {
width: 35px;
height: 35px;
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
left: 15px;
background-image: url(../img/h4Bg.png);
background-size: contain;
background-repeat: no-repeat;
content: "\f1bb";
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
left: 20px;
font-family: "Font Awesome 5 Free";
font-size: 50% !important;
font-weight: 900;
font-size: 120% !important;
color: #fff;
}
*/
.ttl_lv2 h4::after {
}

.ttl_lv2 i {
margin-right: 10px;
}
.ttl_lv2:first-of-type {
margin-top: 0px;
}
.ttl_lv1 + .ttl_lv2 {
margin-top: 0px;
}

.ttl_lv2_2 {
background: inherit;
box-shadow: inherit;
}
.ttl_lv2_2 h4 {
padding: 50px 10px 10px 10px;
text-align: center;
color: #156c18;
}
.ttl_lv2_2 h4::before {
width: 50px;
height: 50px;
content: "";
position: absolute;
top: 0;
right: 0;
left: 0;
transform: inherit;
-webkit- transform: inherit;
margin: auto;
background-image: url(../img/h4Bg.png);
}



/* 小見出し_h5 */
.ttl_lv3 {
display: block;
margin-top: 40px;
margin-bottom: 20px;
padding-bottom: 0;
text-align: center;
}
.ttl_lv3 h5 {
position: relative;
padding: 8px 10px;
font-size: 110%;
font-weight: bold;
text-align: left;
letter-spacing: 2px;
color: #fff;
background-color: #333;
border-left: 10px solid #888;
/*background-color: #292929;
background: repeating-linear-gradient(-45deg, #303030, #303030 2px, #292929 2px, #292929 4px) !important;
border: 1px solid #fff;
*/
}
.ttl_lv3 h5 span {
/*
position: relative;
background-color: #171717;
*/
}
/*
.ttl_lv3 h5::before {
content: "";
position: absolute;
width: 100%;
height: 3px;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
right: 0;
left: 0;
margin: auto;
background-color: #848484;
}
*/
/*
.ttl_lv3 h5::before {
content: "\f054";
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
right: 10px;
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 120% !important;
color: #848484;
}
*/
.ttl_lv3 .date {
display: block;
margin-top: 5px;
padding: 0;
font-size: 14px;
font-weight: normal;
text-align: right;
letter-spacing: 0;
line-height: 1;
color: #ccc;
}
.ttl_lv3 .date span {
margin-left: 5px;
letter-spacing: 2px;
}
.ttl_lv3:first-of-type {
margin-top: 0px;
}
.ttl_lv1 + .ttl_lv3 {
margin-top: 0px;
}
.ttl_lv2 + .ttl_lv3 {
margin-top: 20px;
}
.box2col .ttl_lv3 {
margin-top: 0px;
margin-bottom: 10px;
}



/* 小小見出し_h6 */
.ttl_lv4 {
display: block;
margin-top: 20px;
margin-bottom: 20px;
padding-bottom: 0;
padding-right: 15px;
padding-left: 15px;
}
.ttl_lv4 h6,
.col_ttl {
position: relative;
padding: 5px 10px 5px 20px;
font-size: 100%;
font-weight: bold;
letter-spacing: 1px;
line-height: 1.3;
text-align: left;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: #171717;
/*
border-bottom-color: #fff;
*/
}
.ttl_lv4 h6::before,
.col_ttl::before {
content: "";
width: 10px;
height: 10px;
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
left: 5px;
background-image: url(../img/h6_bg.png);
background-size: 10px auto;
background-repeat: no-repeat;
background-position: center;
}

/*
.ttl_lv4 h6::before,
.col_ttl::before {
content: "\f0da";
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
left: 5px;
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 120% !important;
color: #848484;
}
*/
.ttl_lv4:first-of-type {
margin-top: 0px;
}
.ttl_lv2 + .ttl_lv4 {
margin-top: 0px;
}
.ttl_lv3 + .ttl_lv4 {
margin-top: 0px;
padding-right: 0;
padding-left: 0;
}



/* 動画埋め込み */
video {
max-width: 100%;
height: auto;
background-color: #ccc;
}



/* 単独画像ブロック */
.imgArea {
text-align: center;
width: 100%;
}

.imgArea a{
text-align: center;
width: 100% !important;
}

@media screen and (max-width: 767px) {
	.imgArea img {
	/*width: 100%;*/
	}
}
.imgArea p{
	width: 100%;
}
.imgArea img {
max-width: 100%;
height: auto;
display: block;
margin: auto;
}
.imgArea a img:hover {
opacity: 0.7;
transition: all 0.5s;
}



/* 画像の角を落とす */
/*
.kado {
display: inline-block;
position: relative;
}
.kado::after {
position: absolute;
content: "";
width: 30px;
height: 30px;
z-index: 999;
top: 0;
left: 0;
background-image: url(../img/img_corner.png);
background-repeat: no-repeat;
background-size: cover;
background-position: top left;
}
*/



/* 枠付き画像 */
.frameImg {
padding: 6px;
background-color: #fff;
box-shadow: 0 0 10px rgba(0,0,0,0.6);
border-radius: 1px;
}
.frameImg2 {
padding: 6px;
background-color: #fff;
border-radius: 1px;
}


/* シャドウ付き画像 */
.shadowImg {
/*box-shadow: 4px 4px #b60000;*/
box-shadow: -4px -4px #b60000;
}



/* 背景 */
.bg1 {
color: #fff;
padding: 30px;
background-image: url(../img/bg1.jpg);
background-size: 100% auto;
background-position: top center;
/*
background-color: #ffefe6;
border-style: solid;
border-width: 2px;
border-color: #d5bd84;
border-radius: 2px;
border-radius: 2px;
*/
}

.bg2 {
padding: 30px;
background-color: #eee;
}
.border1 {
padding: 20px;
border: 1px solid #ccc;
}
.border2 {
border: 2px solid #ccc;
}
.border3 {
border: 2px solid #000;
}



/* キャッチコピー */
.catch {
font-size: 120%;
font-weight: bold;
text-align: center;
}



/* 文章ブロック */
.textArea {
}



/* テキスト＋画像左右寄せ */
.floatBoxR {
}
.floatBoxR .in1 {
float: right;
width: 40%;
padding-left: 20px;
}
.floatBoxR .in1 img {
/*width: 100%;*/
}
.floatBoxR .in2 {
}

.floatBoxL {
}
.floatBoxL .in1 {
float: left;
width: 40%;
padding-right: 20px;
}
.floatBoxL .in1 img {
/*width: 100%;*/
}
.floatBoxL .in2 {
}

.floatBoxR .imgArea ,
.floatBoxL .imgArea {
padding-bottom: 10px;
}
.floatBoxR .txt ,
.floatBoxL .txt {
padding-top: 10px;
}




/* 2～7カラム */
.box2col,
.box3col,
.box4col,
.box5col,
.box6col,
.box7col {
font-size: 0;
}
.box2col .in,
.box3col .in,
.box4col .in,
.box5col .in,
.box6col .in,
.box7col .in {
display: inline-block;
table-layout: fixed; /*ie対策*/
vertical-align: top;
float: none;
font-size: 1rem;
padding-bottom: 30px;
padding-right: 15px;
padding-left: 15px;
text-align: left;
}
.box2col .in .in_box {
font-size: 0;
}
.box2col .in .in_box_in {
display: inline-block;
vertical-align: top;
float: none;
width: 50%;
font-size: 1rem;
}


.box2col .in img,
.box3col .in img,
.box4col .in img,
.box5col .in img,
.box6col .in img,
.box7col .in {
width: auto;
}
.box2col .imgArea,
.box3col .imgArea,
.box4col .imgArea,
.box5col .imgArea,
.box6col .imgArea,
.box7col .imgArea {
}
.box2col .in,
.box2col_li {
width: 50%;
position: relative;
}
.box3col .in,
.box3col_li {
width: 33.3333333333%;
position: relative;
}
.box4col .in,
.box4col_li {
width: 25%;
position: relative;
}
.box5col .in {
width: 20%;
position: relative;
}
.box6col .in {
width: 16.6666666667%;
position: relative;
}
.box7col .in {
width: 14.2857142857%;
position: relative;
}
.col_txt {
margin-top: 10px;
text-align: left;
}
.box3col .col_txt,
.box4col .col_txt,
.box5col .col_txt,
.box6col .col_txt,
.box7col .col_txt {
font-size: 15px;
line-height: 1.3;
}
.col_ttl {
/*margin-top: 10px;*/
margin-bottom: 15px;
}
.box2col .col_ttl,
.box3col .col_ttl,
.box4col .col_ttl,
.box5col .col_ttl,
.box6col .col_ttl,
.box7col .col_ttl {
margin-bottom: 10px;
}
.box2col .txt,
.box3col .txt,
.box4col .txt,
.box5col .txt,
.box6col .txt,
.box7col .txt {
margin-top: 5px;
padding: 8px 5px;
font-size: 13px;
text-align: center;
line-height: 1.3;
color: #fff;
background-color: #333;
}
.box2col .imgArea + .col_ttl,
.box3col .imgArea + .col_ttl,
.box4col .imgArea + .col_ttl,
.box5col .imgArea + .col_ttl,
.box6col .imgArea + .col_ttl,
.box7col .imgArea + .col_ttl {
margin-top: 5px;
}
.col_txt + .col_ttl {
margin-top: 40px;
}







/* 2カラム（画像＋テキスト） */
.box2col_R {
}
.box2col_L {
}
.box2col_R .in_txt,
.box2col_L .in_txt {
}
.box2col_R .in_img,
.box2col_L .in_img {
}

.box2col_R .in_img,
.box2col_L .in_img {
width: 40%;
}
.box2col_R .in_img {
float: right;
}
.box2col_R .in_txt,
.box2col_L .in_txt {
width: 60%;
}
.box2col_R .txt,
.box2col_L .txt {
margin-top: 5px;
}
.box2col_R .in_txt .col_txt,
.box2col_L .in_txt .col_txt {
margin-top: 0;
padding-top: 0;
}



/* 入れ子用 */
.box2col .box2col {
margin: 0 -15px;
}


/* 1カラム目広く */
.box3col_2.box3col .in {
width: 50%;
}
.box3col_2.box3col .in:nth-child(2)  {
width: 25%;
}
.box3col_2.box3col .in:nth-child(3)  {
width: 25%;
}



/* 3カラム_右から左矢印 */
.arrow_box {
text-align: center;
}
.arrow_box .in1,
.arrow_box .in2 {
vertical-align: middle;
}
.arrow_box .in1 {
width: 42.5%;
}
.arrow_box .in1 .txt {
}
.arrow_box .in2 {
width: 15%;
}
.arrow_box .arrow {
height: 83px;
background-image: url(../img/arrow11.png);
background-repeat: no-repeat;
background-size: 50px 83px;
background-position: center;
}
.arrow_box .in2 .txt {
display: inline-block;
margin-bottom: 10px;
padding: 0 10px;
color: #fff;
background-color: #b60000;
}
.arrow_box .in2 img {
max-width: 100%;
width: inherit;
height: auto;
}







/* ポイント見出し */
.point_ttl {
display: flex;
align-items: center;
font-weight: bold;
line-height: 1.3;
color: #fff;
/*background-color: #b60000;*/
background-color: rgba(182,0,0,0.6);
border-radius: 3px;
}
.point_ttl .in1 {
width: 15%;
padding: 8px 10px;
text-align: center;
letter-spacing: 2px;
/*
background-color: #b60000;
border-radius: 2px;
*/
}
.point_ttl .in2 {
width: 85%;
padding: 8px 10px;
/*
font-weight: bold;
color: #b60000;
*/
}



/* 下矢印 */
.arrow_down {
text-align: center;
}
.arrow_down img {
max-width: 100%;
width: inherit;
height: auto;
display: block;
margin: auto;
}



/* リスト */
.list1 {
list-style: none;
padding-left: 10px;
}
.list1 li {
position: relative;
padding-bottom: 5px;
padding-left: 20px;
font-size: 100%;
text-align: left;
}
.list1 li:last-of-type {
padding-bottom: 10px;
}
.list1 li::before {
content: "\025CF";
position: absolute;
top: 3px;
left: 0;
padding-right: 10px;
font-size: 10px !important;
font-weight: bold;
color: #b60000;
}

.list2,
.list3 {
padding-left: 5px;
font-size: 110%;
font-weight: bold;
letter-spacing: 0px;
line-height: 1.5;
}
.list2 li,
.list3 li {
position: relative;
padding-bottom: 20px;
padding-left: 35px;
padding-right: 0px;
}
.list2 li:last-of-type,
.list3 li:last-of-type {
padding-bottom: 0;
}
.list2 li::before {
content: "";
width: 18px;
height: 18px;
position: absolute;
top: 4px;
left: 5px;
padding-right: 10px;
color: #b60000;
background-image: url(../img/list_maker1.png);
background-size: 18px auto;
background-repeat: no-repeat;
}
.list_none::before {
display: none;
}

.list3 {
list-style: decimal;
margin-left: 30px;
}
.list3 li {
padding-left: 15px;
color: #b60000;
}
.list3 li p {
color: #000;
}



/* テーブル */
.tbl1{
	margin-bottom: 20px;
}

.tbl1,
.tbl2,
.tbl3 {
width: 100%;
}
.tbl1,
.tbl3 {
font-size: 15px;
}
.tbl2 {
font-size: 14px;
}
.tbl1 th,
.tbl2 th,
.tbl3 th {
vertical-align: middle;
font-weight: normal;
text-align: left;
line-height: 1.2;
color: #fff;
background-color: #333;
border: 1px solid #777;
}
.tbl1 th,
.tbl3 th {
padding: 10px 20px;
}
.tbl2 th {
padding: 10px 5px;
}
.tbl2 tr:first-of-type th,
.tbl3 tr:first-of-type th {
padding: 5px 5px;
}
.tbl1 td,
.tbl2 td,
.tbl3 td {
/*background: #fff;*/
border: 1px solid #777;
}
.tbl1 td,
.tbl3 td {
padding: 10px 20px;
}
.tbl2 td {
padding: 10px 5px;
}
.tbl1 tr:first-of-type th,
.tbl2 tr:first-of-type th {
}
.tbl1 tr:first-of-type td,
.tbl2 tr:first-of-type td {
}
.tbl1 ttl,
.tbl2 ttl {
}

.tbl2 th,
.tbl3 th {
text-align: center;
}
.tbl2 td {
vertical-align: middle;
text-align: center;
}
.box2col .tbl2 {
/*font-size: 13px;*/
}

.tbl2 td .imgArea {
padding: 5px 5px 0;
}

.ngfff{
	background: #ffffff !important;
}

/* スマホ表示時横スクロール */
.tblBox {
}



/* シンプルテーブル（上下罫線） */
.tbl4 {
}
.tbl4 th,
.tbl4 td {
padding: 20px 20px;
background: #fff;
border-bottom: 1px solid #ccc;
}
.tbl4 th:first-of-type,
.tbl4 td:first-of-type {
border-top: 1px solid #ccc;
}
.tbl4 th {
text-align: left;
}
.tbl4 td {
}



/* 画像背景バナー */
.img_link {
}
.img_link li {
text-align: center;
}
.img_link .imgArea {
display: inline-block;
position: relative;
padding-bottom: 0;
}
@media all and (-ms-high-contrast: none){ /* ie */
	.img_link .imgArea {
	width: 100%;
	}
}
.img_link .imgArea a {
width: 100%;
display: block;
}
.img_link .imgArea img {
border: 4px solid #fff;
border-radius: 1px;
/*
border: 3px solid #171717;
*/
}
.img_link_in_txt {
width: 90%;
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
right: 0;
left: 0;
margin: auto;
padding: 50px 10px;
font-size: 20px;
font-weight: bold;
text-align: center;
line-height: 1.3;
letter-spacing: 3px;
text-shadow: 0 0 5px #000;
color: #fff;
background-color: rgba(0,0,0,0.5);
}
.box3col .img_link_in_txt {
padding: 40px 10px;
font-size: 18px;
letter-spacing: 1px;
}
.box4col .img_link_in_txt {
padding: 30px 10px;
font-size: 16px;
letter-spacing: 0;
}
.img_link .imgArea:hover img {
opacity: 1 !important;
border: 4px solid #ff0000;
/*
outline: 3px solid #ff0000;
*/
transition: all 0.3s;
}
.img_link .imgArea:hover .img_link_in_txt {
color: #fff;
background-color: rgba(255,0,0,0.5);
transition: all 0.3s;
}
/*
.img_link {
}
.img_link li {
text-align: center;
}
.img_link .imgArea {
display: inline-block;
position: relative;
padding-bottom: 0;
}
.img_link .imgArea::after {
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);
background-color: rgba(0,0,0,0.6);
border: 4px solid #fff;
border-radius: 1px;
}
.img_link .imgArea img {
}
.img_link_in_txt {
z-index: 9;
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
right: 0;
left: 0;
margin: auto;
padding: 10px;
font-size: 20px;
font-weight: bold;
text-align: center;
line-height: 1.3;
letter-spacing: 3px;
text-shadow: 0 0 5px #000;
}
.box3col .img_link_in_txt {
font-size: 18px;
letter-spacing: 1px;
}
.box4col .img_link_in_txt {
font-size: 16px;
letter-spacing: 0;
}
.img_link a {
display: block;
}
.img_link .imgArea:hover::after {
background-color: rgba(255,0,0,0.5);
border: 4px solid #ff0000;
transition: all 0.3s;
}
.img_link .imgArea:hover .img_link_in_txt {
color: #fff;
transition: all 0.3s;
}
*/



/* リンクボタン */
.linkBnr {
position: relative;
display: inline-block;
width: auto;
background-color: #4d4d4d;
background-image: url(../img/arrow1.png);
background-repeat: no-repeat;
background-position: right 10px center;
background-size: 20px auto;
/*border: 1px solid #848484;*/
}
.linkBnr a {
display: inline-block;
padding: 15px 150px;
font-weight: bold;
text-align: center;
text-decoration: none !important;
line-height: 1.3;
color: #fff !important;
}
/*
.linkBnr i {
position: absolute;
top: 50%;
right: 55px;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
font-size: 120%;
color: #fff;
}
*/
.linkBnr:hover {
background-color: #ff0000;
background-image: url(../img/arrow2.png);
/*border: 1px solid #ff0000;*/
transition: all 0.3s;
}



/* テキストリンク */
.linkBox,
.linkBox2,
.linkBox3 {
font-size: 0;
}
.linkBox li,
.linkBox2 li,
.linkBox3 li {
width: 25%;
display: inline-block;
vertical-align: top;
float: none;
}
.linkBox2 li {
width: 33.3333%;
}
.linkBox3 li {
width: 50%;
}
.linkBox li p,
.linkBox2 li p,
.linkBox3 li p {
position: relative;
margin: 10px;
font-size: 1rem;
background-color: #4d4d4d;
background-image: url(../img/arrow3.png);
background-repeat: no-repeat;
background-position: right 10px center;
background-size: 20px auto;
/*border: 1px solid #848484;*/
}
.linkBox li p:hover,
.linkBox2 li p:hover,
.linkBox3 li p:hover {
background-color: #ff0000;
background-image: url(../img/arrow3_over.png);
/*border: 1px solid #ff0000;*/
transition: all 0.3s;
}
.linkBox li p a,
.linkBox2 li p a,
.linkBox3 li p a {
display: inline-block;
width: 100%;
padding: 15px 40px 15px 20px;
font-size: 15px;
font-weight: bold;
letter-spacing: 0;
line-height: 1.3;
text-align: center;
text-decoration: none !important;
color: #fff !important;
}
/*
.linkBox i,
.linkBox2 i {
position: absolute;
top: 50%;
right: 30px;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
font-size: 1.1rem;
color: #fff;
}
.linkBox2 li {
width:20%;
*/
}




/* 矢印 */
.flowArrow1,
.flowArrow2 {
margin-top: -40px;
margin-bottom: -40px;
text-align: center;
font-size: 1000%;
line-height: 1;
color: #cc0b0b;
}
.flowArrow2 {
color: #265794;
}



/* お問い合わせバナー */
.lower_info {
position: relative;
padding: 100px 0;
text-align: center;
color: #fff;
background-image: url(../img/infoBg.jpg);
background-repeat: no-repeat;
background-size: cover;
}
.lower_info a {
color: #fff;
}
.lower_info_wrap {
display: inline-block;
width: 1050px;
}
@media screen and (max-width: 1300px) {
	.lower_info_wrap {
	width: 100%;
	padding-right: 20px;
	padding-left: 20px;
	}
}

.lower_info .ttl {
display: inline-block;
margin-bottom: 10px;
/*
padding: 8px 40px;
font-size: 24px;
letter-spacing: 2px;
line-height: 1;
background-color: #000;
*/
}
.lower_info .ttl img {
width: auto;
height: 67px;
}
.lower_info_logo {
}
.lower_info_logo img {
width: 300px;
height: auto;
}
.lower_info .address {
margin-top: 10px;
margin-bottom: 10px;
line-height: 1.2;
}
.lower_info .text {
margin-bottom: 50px;
font-size: 20px;
font-weight: 600;
}
.lower_info .name {
font-size: 28px;
font-weight: 600;
}
.lower_info .tel {
display: flex;
margin-bottom: 20px;
font-size: 23px;
font-weight: 600;
line-height: 1;
}
.lower_info .tel .in {
width: 50%;
padding: 10px;
}
.lower_info .tel .in:nth-of-type(1) {
text-align: right;
}
.lower_info .tel .in:nth-of-type(2) {
text-align: left;
}
.lower_info .tel_no {
font-size: 33px;
font-weight: 900;
}
.lower_info .btn a {
display: inline-block;
padding: 10px 50px;
text-decoration: none;
line-height: 1.2;
color: #fff;
background-color: #ff0000;
border: 1px solid #ff0000;
border-radius: 0;
/*box-shadow: 1px 1px 2px #888;*/
}
.lower_info .btn a:hover {
color: #ff0000;
background-color: #fff;
transition: all 0.5s;
}



/*吹き出し*/
.balloon1 {
position: relative;
display: inline-block;
min-width: 120px;
max-width: 100%;
padding: 10px 50px;
font-size: 150%;
letter-spacing: 2px;
font-weight: 700;
color: #fff;
background: #86a3c5;
border-radius: 50px;
}
.balloon1:before {
content: "";
position: absolute;
bottom: -28px;
left: 50%;
margin-left: -15px;
border: 15px solid transparent;
border-top: 15px solid #86a3c5;
}
.balloon1 p {
margin: 0;
padding: 0;
}

.balloon2-top_pc {
position: relative;
display: block;
margin-top: 20px;
padding: 15px;
background: #faf8ee;
border: solid 3px #d5bd84;
}
.balloon2-top_pc:before {
content: "";
position: absolute;
top: -24px;
left: 50%;
margin-left: -15px;
border: 12px solid transparent;
border-bottom: 12px solid #faf8ee;
z-index: 2;
}
.balloon2-top_pc:after {
content: "";
position: absolute;
top: -30px;
left: 50%;
margin-left: -17px;
border: 14px solid transparent;
border-bottom: 14px solid #d5bd84;
z-index: 1;
}
.balloon2-top_pc p {
margin: 0;
padding: 0;
}

@media screen and (min-width: 768px) {
	.balloon2-right {
	  position: relative;
	  padding: 20px;
	  font-size: 16px;
	  background: #FFF;
	  border: solid 3px #d5bd84;
	  box-sizing: border-box;
	  border-radius: 10px;
	}
	.balloon2-right:before {
	  content: "";
	  position: absolute;
	  top: 50%;
	  right: -24px;
	  margin-top: -12px;
	  border: 12px solid transparent;
	  border-left: 12px solid #FFF;
	  z-index: 2;
	}
	.balloon2-right:after {
	  content: "";
	  position: absolute;
	  top: 50%;
	  right: -30px;
	  margin-top: -14px;
	  border: 14px solid transparent;
	  border-left: 14px solid #d5bd84;
	  z-index: 1;
	}
	.balloon2-right p {
	  margin: 0;
	  padding: 0;
	}
}



/*---------------------------------------------------------------------
 TOPへ戻るボタン
---------------------------------------------------------------------*/
.pageTop {
z-index: 9999;
position: fixed;
bottom: 10px;
right: 10px;
}
.pageTop a {
}
.pageTop img {
max-width: 100%;
height: auto;
display: block;
margin: auto;
/*
border: 1px solid;
border-radius: 50%;
background: rgba(255,255,255,0.8);
*/
}






/*---------------------------------------------------------------------
 お問い合わせ
---------------------------------------------------------------------*/
/* フォーム要素 */
form {
}



/* iOSでのsubmit, buttonのデザインをリセット */
input[type="submit"],
input[type="reset"],
input[type="button"] {
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="reset"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
display: none;
}
input[type="submit"]::focus,
input[type="reset"]::focus,
input[type="button"]::focus {
outline-offset: -2px;
}
/* END:iOSでのsubmit, buttonのデザインをリセット */



input[type="text"],
input[type="date"],
input[type="email"] {
width: 100%;
padding: 5px 10px;
background: #eaeaea;
border: none;
}
input[type="date"] {
display: inline-block;
width: 150px;
}
.form_w30 {
width: 30% !important;
}
.form_w50 {
width: 50% !important;
}
.form_w100px {
width: 100px !important;
}
form .tel,
form .postal_code {
width: 200px;
}

form .small {
margin: 0 11px;
width: 100px;
}

form .small2 {
margin: 0 11px 0 0;
width: 100px;
}

select {
width: 200px;
margin-bottom: 5px;
padding: 2px;
background: #eaeaea;
border: none;
}

textarea {
width: 100%;
padding: 5px 10px;
background: #eaeaea;
border: none;
}

.form_btn {
margin-top: 40px;
padding-bottom: 100px;
text-align: center;
}


input[type="reset"] {
cursor: pointer;
cursor: hand;
width: 200px;
margin-right: 40px;
padding: 10px 5px;
/*
font-size: 110%;
font-weight: bold;
*/
color: #000;
background: none;
border: 1px solid #000;
border-radius: 0px;
}
input[type="reset"]:hover {
color: #fff;
background: #000;
border: 1px solid #000;
transition: all 0.5s;
}
input[type="submit"] {
cursor: pointer;
cursor: hand;
width: 200px;
padding: 10px 5px;
/*
font-size: 110%;
font-weight: bold;
*/
color: #fff;
background-color: #b60000;
border: 1px solid #b60000;
border-radius: 0px;
}
input[type="submit"]:hover {
color: #b60000;
background: #fff;
border: 1px solid #b60000;
transition: background 0.5s;
}
input.w50px {
width: 50px !important;
}


.checkbox_area {
}

.checkbox_area p {
margin-right: 30px;
float: left;
}



/*---------------------------------------------------------------------
 Google MAP
---------------------------------------------------------------------*/
.gMap {
position: relative;
}
.gMap iframe {
width: 100% !important;
height: 500px !important;
/*
border: 2px solid #000 !important;
border-radius: 0px !important;
*/
}
.gMmap img {
width: 100% !important;
height: auto !important;
}

/*---------------------------------------------------------------------
 Facebook埋め込み
---------------------------------------------------------------------*/
.fb {
padding: 10px;
text-align: center;
background: #eee;
}
.fb iframe {
}
