@charset "utf-8";
/* Simple fluid media
   Note: Fluid media requires that you remove the media's height and width attributes from the HTML
   http://www.alistapart.com/articles/fluid-images/ 
*/
img, object, embed, video {
	max-width: 100%;
}

/* IE 6 does not support max-width so default to width 100% */
.ie6 img {
	width:100%;
}

.fluid {

	clear: both;
	margin-left: 0;
	width: 100%;
	float: left;
	display: block;
}

.fluidList {
    list-style:none;
    list-style-image:none;
    margin:0;
    padding:0;        
}

/* Mobile Layout: 480px and below. */

.en { font-family: 'Open Sans', sans-serif; }


/*PC*/
@media print, screen and (min-width: 769px) {

.fixed_link {
display: block;
position: fixed;
right: 0;
bottom: 80px;
width: 250px;
z-index: 150;
}




.main_link { margin: 15px 0; display: block; }

body {  min-width:1200px;}
.document_img { display: none; }


body { min-width: 1300px; }


.gridContainer {
width:100%;
min-width: 1100px;
}
#div1 {
}
.zeroMargin_mobile {
margin-left: 0;
}
.hide_mobile {
display: none;
}

.pcBr {
display: inline-block;
}

.spBr {
display: none;
}

.pc {
display: block;
}

.sp {
display: none;
}

.com_btn { margin: auto 0 auto auto; width: 280px; }
.com_btn a { font-size: 16px; color: #fff; position: relative; text-align: center;margin-top: 30px; background: #47bcc6;  border-radius: 50px; width: 250px; }
.com_btn a { color: #fff; font-size: 16px; font-weight: bold; display: block; padding: 15px; }
.com_btn a::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 30px;  font-size: 18px; top: 18px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.com_btn a:hover::before {right: 20px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.com_btn a:hover {  background: #47bcc6; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
/* com
--------------------------------------------*/


.com_main_txt { font-size: 18px; text-align: center; margin-bottom: 100px; line-height: 2.2em; }

#hedImg {
margin-top: 70px;
padding-top: 30px;
margin-bottom: 100px;
position: relative;
}

#hedImg::before { content: ""; display: block; background: #D3F4EC; position: absolute; width: 100%; z-index:-1; height: 150px; top: 0;}

/*.icon { width: 50px; height: 50px; border-radius: 50px; background: #fff; text-align: center; margin: 0 auto; margin-bottom: 15px; }
.icon i { color: #E56A21; font-weight: bold; font-size: 1.2em; line-height: 50px; }
.hed_tit {
box-sizing: border-box;
width: 1100px;
text-align: center;
margin: 0 auto;
margin-top: 15px;
margin-bottom: 40px;
}
*/
.hed_tit h2 {
text-align: center;
font-size: 3.2rem;
font-weight: 800;
line-height: 1.5;
letter-spacing: 0.12em;
margin-bottom: 15px;
color: #222;
}

.hed_tit p.en {
text-align: center;
font-size: 2rem;
font-family: 'Open Sans', sans-serif;
letter-spacing: 0.1em;
color: #D6072E;
font-weight: normal;
position: relative;
font-weight: bold;
}


#contents {
width: 100%;
margin: auto;
overflow: hidden;
}

.contentsIn {
width: 1100px;
margin: 0 auto;
}

.fL {
float: left;
}

.fR {
float: right;
}
.w1200 {
width: 1200px;
margin-left: auto;
margin-right: auto;
}

.w1100 {
width: 1100px;
margin-left: auto;
margin-right: auto;
}

.comPd01 {
padding: 0 0 100px;
}

.comInBox01 {
margin-bottom: 100px;
}

.comInBox01:last-child {
margin-bottom: 0px;
}

.comPd_80 {
padding: 80px 0;
}

.comPd_top80 {
padding: 80px 0 0;
}

.p_relative {
position: relative;
}

.bgGray {
background-color: #ecf0f4;
}

.bgColorSide h3 {
display: inline-block;
overflow: hidden;
position: relative;
z-index: 0;
line-height: 1em;
transform: translateX(-30%);
transition:all .3s .3s ease;
opacity: 0;
}

.active h3 {
transform: translateX(0%);
transition:all .3s .0s ease;
opacity: 1;
}

.bgColorSide h3 span {
line-height: 1em;
}

.bgColorSide h3:before {
background: #1d6dab;
background: -moz-linear-gradient(left, #1d6dab 0%, #009fe6 50%, #98e6d2 100%);
background: -webkit-linear-gradient(left, #1d6dab 0%,#009fe6 50%,#98e6d2 100%);
background: linear-gradient(to right, #1d6dab 0%,#009fe6 50%,#98e6d2 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1d6dab', endColorstr='#98e6d2',GradientType=1 );
content: '';
display: block;
height: 100%;
position: absolute;
transform: translateX(-101%);
transition:all .5s .3s ease; 
width: 100%;
z-index: 1;
}

.bgColorSideIn {
display: inline-block;
opacity: 0;
transition:all .8s 0s ease;
}

.active h3:before {
transform: translateX(101%);
}

.active .bgColorSideIn {
opacity: 1;
}

.txtC {
text-align: center;
}


/*--パンくず---------*/
#pan_area {
width: 100%;
max-width: 1100px;
margin: 0 auto;
font-size: 1.3rem;
color: #222;
padding-top: 5px;
}
#pan_area h3 {
font-size: 1.3rem;
font-weight: 500;
}
#pan_area #pan_area_in {
width: 100%;
margin: 0 auto;
display: -webkit-flex;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
#pan_area #pan_area_in .pan_list {
padding-right: 16px;
margin-right: 10px;
position: relative;
}
#pan_area #pan_area_in .pan_list::before {
position: absolute;
content: "";
right: 0;
top: 50%;
width: 4px;
height: 4px;
margin-top: -2px;
border-top: 1px solid #222;
border-right: 1px solid #222;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
#pan_area #pan_area_in .pan_list:last-child {
padding-right: 0;
margin-right: 0;
}
#pan_area #pan_area_in .pan_list:last-child::before {
display: none;
}
#pan_area #pan_area_in .pan_list a {
color: #222;
text-decoration: underline;
}


/*--スクロールトップ---------*/
#totop {
bottom: 20px;
display: block;
position: fixed;
right: 30px;
z-index: 2000;
width: 54px;
}

#totop a {
display: block;
width: 54px;
height: 54px;
text-indent: -1000em;
overflow: hidden;
background: url(../images/com/btn_scroll_top.png) 0 0 no-repeat;
background-size: auto auto;
background-size: 100% auto;
}

#document_img {
bottom: 80px;
display: block;
position: fixed;
right: 15px;
z-index: 2000;
width: 135px;
}

#document_img a {
display: block;
width: 135px;
height: 300px;
}

#document_img a img {
width: 100%;
height: auto; 
}
/*-----------*/

.com_tit { font-size: 28px; font-weight: bold; text-align: center; margin-bottom: 50px; color: #333; line-height: 1.8em; }
.com_txt { font-size: 16px; font-weight: 500; line-height: 2em; text-align: center; }

.bgWhite {
background-color: #fff;
}

.comPd70 {
padding: 70px 0;
}

.pt80 {
padding-top: 80px;
}

.w80p {
width: 80%;
margin-left: auto;
margin-right: auto;
}

.comBtn {
width: 280px;
}

.comBtn a {
display: block;
background-color: #1b1f79;
color: #fff;
text-align: center;
font-size: 1.6rem;
padding: 10px;
position: relative;
}

.comBtn a:before {
font-family: "Font Awesome 5 Free";
content: "\f105";
position: absolute;
font-weight: bold;
/*top: 50%;*/
right: 30px;
font-size: 1.6rem;
-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

.comBtn a:hover {
background-color: #e00011;
}

.comBtn a:hover:before {
right: 20px;
}

.waku_fff {
border: #fff 1px solid;
}

.rightBtn {
margin-left: auto;
margin-right: 0;
}

.centerBtn {
margin-left: auto;
margin-right: auto;
}

.idxTit {
width: 100%;
margin-top: 40px;
margin-bottom: 40px;
}

.idxTit h3 {
text-align: center;
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
font-size: 3.5rem;
letter-spacing: 0.05em;
margin-bottom: 15px;
}

.idxTit p {
text-align: center;
font-size: 1.8rem;
}

.idxTit2 {
width: 100%;
margin-bottom: 40px;
}

.idxTit2 h3 {
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
font-size: 3.5rem;
letter-spacing: 0.05em;
margin-bottom: 15px;
}

.idxTit2 p {
font-size: 1.8rem;
}

.idxTit2 h3,
.idxTit2 p {
text-shadow: 
    #fff 2px 0px,  #fff -2px 0px,
    #fff 0px -2px, #fff 0px 2px,
    #fff 2px 2px , #fff -2px 2px,
    #fff 2px -2px, #fff -2px -2px,
    #fff 1px 2px,  #fff -1px 2px,
    #fff 1px -2px, #fff -1px -2px,
    #fff 2px 1px,  #fff -2px 1px,
    #fff 2px -1px, #fff -2px -1px;
}

.idxTit3 {
width: 100%;
margin-bottom: 40px;
}

.idxTit3 h3 {
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
font-size: 3.5rem;
letter-spacing: 0.05em;
margin-bottom: 15px;
color: #fff;
}

.idxTit3 p {
font-size: 1.8rem;
color: #fff;
}

.c_fff {
color: #fff;
}

.comBox {
width: 100%;
padding-bottom: 100px;
}

.comBox:last-child {
padding-bottom: 0px;
}

/*中ページのヘッド*/
#main--image {
position: relative;
z-index: 2;
overflow: hidden;
min-width: 1100px;
}
#main--image:before {
content: "";
position: absolute;
left: -100%;
bottom: 0;
width: 80%;
height: 88%;
background: #2a2a2a;
z-index: 2;
-webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
-webkit-transition-property: left;
-moz-transition-property: left;
-ms-transition-property: left;
-o-transition-property: left;
transition-property: left;
}
#main--image.active:before {
left: 0
}

#main--image.active h2 {
font-family: 'Roboto', sans-serif;
opacity: 1;
line-height: 1.2;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
transform: translateY(0px)
}
#main--image.active h2 span {
font-family: Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
transform: translateY(0px)
}
#main--image.active .main--bg:before {
left: 100%
}
#main--image.active .main--bg:after {
left: 100%
}

#main--image .main--bg {
position: absolute;
right: 0;
top: 0;
width: 60%;
height: 88%;
background: #fff;
z-index: 3;
background-repeat: no-repeat;
background-position: center;
-webkit-background-size: cover;
-o-background-size: cover;
background-size: cover
}
#main--image .main--bg:before {
content: "";
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: #993333;
-webkit-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-o-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-webkit-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-o-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-webkit-transition-delay: .2s;
-moz-transition-delay: .2s;
-ms-transition-delay: .2s;
-o-transition-delay: .2s;
transition-delay: .2s
}
#main--image .main--bg:after {
content: "";
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: #f3f4f5;
-webkit-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-o-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-webkit-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-o-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1)
}

#main--image h2 {
font-family: 'Roboto', sans-serif;
text-shadow: 0px 0px 3px rgba(0,0,0,0.6);
box-sizing: border-box;
position: relative;
width: 100%;
height: 100%;
z-index: 4;
padding-top: 20vh;
padding-bottom: 20vh;
padding-left: 8%;
padding-right: 8%;
margin-bottom: 0;
color: #FFF;
font-size: 5.2rem;
letter-spacing: 4px;
font-weight: bold;
opacity: 0;
-webkit-transform: translateY(20px);
-moz-transform: translateY(20px);
-ms-transform: translateY(20px);
transform: translateY(20px);
-webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-property: transform, opacity;
-moz-transition-property: transform, opacity;
-ms-transition-property: transform, opacity;
-o-transition-property: transform, opacity;
transition-property: transform, opacity;
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
}
#main--image h2 span {
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
display: block;
font-size: 1.6rem;
font-weight: normal;
padding-top: 30px;
letter-spacing: 2px;
opacity: 0;
-webkit-transform: translateY(20px);
-moz-transform: translateY(20px);
-ms-transform: translateY(20px);
transform: translateY(20px);
-webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-property: transform, opacity;
-moz-transition-property: transform, opacity;
-ms-transition-property: transform, opacity;
-o-transition-property: transform, opacity;
transition-property: transform, opacity;
-webkit-transition-delay: .8s;
-moz-transition-delay: .8s;
-ms-transition-delay: .8s;
-o-transition-delay: .8s;
transition-delay: .8s
}

/*//////*/

/*-----タイトル-----*/
.comTit__obi01 {
width: 100%;
position: relative;
padding-top: 70px;
}

.comTit__obi01:before {
position: absolute;
content: "";
width: 100%;
height: 300px;
top: 0;
right: 0;
background: #f7f5f2;
z-index: -1;
}

.comTit__obi01 h3 {
text-align: center;
font-family: 'Slabo 27px', serif;
font-size: 3.5rem;
letter-spacing: 0.1em;
color: #ae9373;
font-weight: normal;
position: relative;
padding-bottom: 70px;
margin-bottom: 50px;
}

.comTit__obi01 h3:after {
width: 1px;
height: 40px;
background: #ae9373;
content: "";
position: absolute;
bottom: 0;
left: 50%;
}

.comTit01 {
font-size: 3.6rem;
line-height: 1.5;
margin-bottom: 25px;
letter-spacing: 0.1em;
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
text-align: center;
color: #cd4a38;
}

.comTit01Sub {
font-size: 1.8rem;
line-height: 2;
letter-spacing: 0.1em;
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
text-align: center;
}

.hedTitBox {
margin-bottom: 65px;
}

.comTit02 {
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
text-align: center;
font-size: 3.5rem;
margin-bottom: 60px;
font-weight: 500;
}
.comTit02 span {
position: relative;
display: inline-block;
padding: 0 60px;
}
.comTit02 span:before, .comTit02 span:after{
content: '';
position: absolute;
top: 50%;
display: inline-block;
width: 32px;
height: 1px;
background-color: #303030;
-moz-transform: rotate(-60deg);
-webkit-transform: rotate(-60deg);
-ms-transform: rotate(-60deg);
transform: rotate(-60deg);
}
.comTit02 span:before {left:0;}
.comTit02 span:after {right: 0;}

.comTit03 {
position: relative;
display: inline-block;
padding-left: 35px;
font-size: 2rem;
font-weight: bold;
letter-spacing: 0.01em;
margin-bottom: 20px;
}

.comTit03:before {
content: '';
position: absolute;
top: 50%;
left:0;
display: inline-block;
margin-top: -2px;
width: 20px;
height: 2px;
background-color: #e8a02b;
}

.comTit04 {
position: relative;
padding: 0.8em 0;
margin-bottom: 15px;
font-size: 1.7rem;
font-weight: 500;
text-align: center;
}
.comTit04::before,
.comTit04::after {
position: absolute;
left: 0;
content: '';
width: 100%;
height: 6px;
box-sizing: border-box;
}
.comTit04::before {
top: 0;
border-top: 2px solid #1b1f79;
border-bottom: 1px solid #1b1f79;
}
.comTit04::after {
bottom: 0;
border-top: 1px solid #1b1f79;
border-bottom: 2px solid #1b1f79;
}

.comTit05 {
color: #e8a02b;
font-family: "游明朝体","Yu Mincho",YuMincho,"ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif;
font-size: 2.5rem;
line-height: 1.5;
margin-bottom: 15px;
}

.com_table {
border-top: 1px solid #dfdfdf;
width: 100%;
margin:0 0 60px;
}

.com_table th {
width:25%;
background:none;
border-bottom: 1px solid #dfdfdf;
padding: 30px;
text-align: left;
display:table-cell;
position: relative;
}

.com_table th span {
font-style: italic;
font-family: 'Osaka','Verdana';
}

.com_table td {
border-bottom: 1px solid #dfdfdf;
padding: 30px;
display:table-cell;
vertical-align: middle;
}

.com_table2 {
width: 100%;
}

.com_table2 th {
color: #FFF;
line-height: 1.1;
padding: 1.0em;
background: #2a2a2a;
text-align: center;
border-bottom: #fff 1px solid;
}

.com_table2 td {
padding: 1.0em;
border-bottom: solid 1px #E4E4E4;
vertical-align: middle;
}

/*カードデザイン*/
.com_list {
width: 100%;
margin: 0 auto;
}

.com_list li {
width: 31%;
float: left;
margin-right: 3.5%;
}

.com_list li:nth-child(n+4) {
margin-top: 30px;
}


.com_list li:nth-child(3n+3) {
margin-right: 0px;
}

.l-card {
transition: 0.5s;
overflow: hidden;
width: 100%;
padding: 0;
margin: 0 auto;
background: #fff;
box-shadow: 6px 6px rgba(0, 0, 0, 0.2);
}

.l-card:hover{
transform: translate(5px,5px);
box-shadow: 1px 1px rgba(0, 0, 0, 0.2);
}

.l-card:hover .thumbnail-wrapper::after {
 opacity: 1;
 width: 500px;
 height: 500px;
 border-width: 40px;
}

.l-card:hover .thumbnail-wrapper img {
transform: scale(1.1);
}

.l-card:hover .more-text {
 opacity: 1;
 letter-spacing: 8px;
}

.l-thumbnail {
position: relative;
overflow: hidden;
width: 100%;
height: auto;
}

.l-thumbnail .more-text {
transition: 0.5s;
z-index: 2;
position: absolute;
top: 50%;
transform: translateY(-50%);
opacity: 0;
display: block;
width: 100%;
color: #fff;
font-size: 16px;
font-weight: lighter;
letter-spacing: 1px;
text-align: center;
text-transform: uppercase;
}

.thumbnail-wrapper {
display: block;
margin: 0;
padding: 0;
}

.thumbnail-wrapper::after {
transition: opacity 0.3s, width 0.8s 0.1s, height 0.8s 0.1s, border-width 0.4s 0.1s;
content: "";
box-sizing: content-box;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
width: 0px;
height: 0px;
border-radius: 50%;
border: 0px solid  #993333;
background:rgba(204, 76, 47, 0.7);
opacity: 0;
}

.thumbnail-wrapper img {
transition: 0.5s;
display: block;
max-width: 100%;
}

.text-content {
padding: 16px;
}

.text-content .title {
margin: 0 0 30px 0;
font-size: 20px;
}

.text-content .caption {
margin: 0 0 12px 0;
font-size: 14px;
color: #555;
font-weight: lighter;
}

.content-meta {
overflow: hidden;
width: 100%;
font-size: 14px;
text-align: right;
}

.content-meta .date {
text-align: right;
color: #aaa;
}

a:hover .content-meta .date {
color: #993333;
}

/*背景色*/
.comBg01 {
background-color: #f3f2e9;
}


/* header
--------------------------------------------*/
#header {
width: 100%;
background: #fff;
min-width: 1200px;
height: 70px;
overflow: hidden;
position: fixed;
top: 0;
z-index: 10000;
-webkit-transition: all 700ms cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: all 700ms cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: all 700ms cubic-bezier(0.165, 0.84, 0.44, 1);
transition: all 700ms cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1)
}

.logo_Hed {
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;mobile_list
margin-left: 20px;
outline: none;
margin-left: 15px;
}

.logo_Hed img {
width: 100%;
height: auto;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

.logo_Hed a {
outline: none!important;
display: block;
width: 130px;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
/*
header.smaller .logo_Hed {
width: 200px;
}

header.smaller .logo_Hed img {
width: 110px;
}
*/
.mainMenuInWrap {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
margin-left: 35px;
box-sizing: border-box;
}

.mainMenu {
width: 100%;
min-width: 1100px;
height: 70px;
display: flex;
display: -ms-flexbox;
justify-content: space-between;
-webkit-justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

#menu {
display: flex;
display: -ms-flexbox;
justify-content: flex-end;
-ms-flex-pack: end;
}

#menu li {
font-size: 1.5rem;
margin-right: 15px;
}

#menu li:last-child {
margin-right: 0px;
}

#menu li a {
padding: 26px 10px 25px;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-weight: bold;
letter-spacing: 0.08em;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
line-height: 1.2em;
}

.mainMenuIn {
margin-right: 40px;
}

.inqBox {
width: 300px;
display: flex;
align-items: center;
flex-wrap: wrap;
}

.inqBoxL a { display: block; padding: 15px 20px; text-align: center;  box-sizing: border-box; font-size: 14px!important; display: flex; align-items: center; background: #FFF100; color: #257284; font-weight: bold; justify-content: center; border-radius: 50px; }
.inqBoxL a span { display: block; font-size: 12px; }
.inqBoxL a p { display: block; font-size: 14px;  }
.inqBoxL a:hover { background: #ffd600;  }

.h_mail { margin-left: 15px; }
.h_mail a { width: 50px; height: 50px; border-radius: 50px; background: #D3D3D3; color: #fff; color: #fff; text-align: center; line-height: 50px; display: block; }
.h_mail a:hover { background: #92D1D3; }

.h_line { margin-left: 15px; }
.h_line a { width: 50px; height: 50px; border-radius: 50px; background: #00B900; color: #fff; color: #fff; text-align: center; line-height: 50px; display: block; font-size: 24px; }
.h_line a:hover { opacity: .8; }


.inqBox ul {
width: 200px;
height: 100%;
margin-left: auto;
margin-right: 0;
}

.inqBox li {
display: block;
}

.inqBox li:nth-of-type(1) a { width: 200px;  padding: 10px; text-align: center; font-size: 1.5rem; display: block; line-height: 30px; box-sizing: border-box; height: 50px; }
.inqBox li:nth-of-type(2) a { width: 200px;  padding: 10px; text-align: center; font-size: 1.5rem; display: block; line-height: 30px; box-sizing: border-box; height: 50px; }
/*.inqBox a {
font-size: 1.5rem;
display: block;
line-height: 60px;
width: 120px;
padding: 10px;
text-align: center;
}*/

.inq1 a,
.inq2 a {
color: #fff;
font-weight: bold;
letter-spacing: 0.08em;
}

.inq1 a {
background-color: #ed752e;
}

.inq1 a i { padding-left: 5px; font-size: 16px; }
.inq2 a i { padding-left: 5px; font-size: 16px; }

.inq2 a {
background-color: #eb8d57;
}

.inq1 a:hover,
.inq2 a:hover {
background-color: #92D1D3;
}

.sp_list {
display: none;
}

/*header.smaller #header {
height: 70px;
background-color: rgba(255,255,255,1);
}*/

/*header.smaller .inqBox { margin-top: 10px; }*/

/*header.smaller .mainMenu {
height: 70px;
}

header.smaller #menu li a {
padding: 10px;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
height: 50px;
}

header.smaller .inqBoxR a {
display: block;
line-height: 25px;
width: 200px;
padding: 5px;
height: 35px; 
box-sizing: border-box; 
text-align: center;
}
header.smaller .inqBoxR { height: 70px; }

header.smaller .inqBoxR li:nth-of-type(1) a { width: 200px; box-sizing: border-box; padding: 5px; box-sizing: border-box; font-size: 14px;  }
header.smaller .inqBoxR li:nth-of-type(2) a { width: 200px; box-sizing: border-box; padding: 5px; box-sizing: border-box; font-size: 14px;  }

*/
/* footer
--------------------------------------------*/
#footer {
box-sizing: border-box;
width: 100%;
min-width: 1200px;
padding: 60px 0 0px;
background-color: #fff;
/*background-color: #222728;*/
}

.footerCp {
width: 35%;
}

.footerTopIn {
width: 1200px;
min-width: 1200px;
margin: 0 auto 60px;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
flex-wrap: wrap; 
justify-content: space-between;
}

.footerCp__img {
width: 160px;
margin-bottom: 20px;
}

.footerCp__img img {
width: 100%;
height: auto;
}

.footerCp h3 {
/*display: none;*/
font-size: 1.4rem;
margin-bottom: 25px;
}

.footerCp p {
color: #222;
font-size: 1.3rem;
line-height: 1.8;
letter-spacing: 0.05em;
}

.footerMu {
  flex-basis: 65%;
  display: flex;
  flex-wrap: wrap;
}

.footerMu a {
color: #222;
/*display: block;*/
font-weight: 500;
} 


.fot_sitemap {
display: block;
list-style:none;
margin-right:100px;
padding:0;
}

/*.fot_sitemap:nth-child(8n) {
margin-right:0;
}*/
.fot_sitemap:nth-child(5n) {
margin-right:0;
}

.fot_sitemap:nth-child(n+6) { margin-top: 30px; }

.fot_sitemap li {
font-size:14px;
font-weight: bold;
}
.fot_sitemap li:nth-child(n+2) { margin-top: 7px;}
.fot_sitemap li:nth-child(n+2) p { position: relative; padding-left: 13px; }
.fot_sitemap li:nth-child(n+2) p::before { position: absolute; content: ""; width: 5px; height: 1px; background: #028ce4; display: block; left: 0; top: 45%; }
.fot_sitemap h4,
.fot_sitemap2 h4 {
font-size: 14px;
}

.fot_sitemap p {
/*margin-left: 12px;
letter-spacing: -1px;*/
}  

/*.fot_sitemap h4::before,
.fot_sitemap2 h4::before {
content: "●";
font-size: 0.8rem;
display: block;
color: #028ce4;
float: left;
padding-right: 5px;
margin-top: 6px;
}    */


.fot_sitemap a {
color: #000000;
}

.fot_sitemap a:hover {
color: #92D1D3;
}

/*
.footerMuList {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
margin-bottom: 45px;
}

.footerMuList li {
margin-right: 60px;
}

.footerMuList li:last-child {
margin-right: 0px;
}
*/
.footerMuBtnWrap {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end;
}

.footerMuBtn02 {
margin-left: 50px;
}

.footerMuBtn01 a,
.footerMuBtn02 a {
padding: 8px 60px;
border: #222 1px solid;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

.footerMuBtn01 a:hover {
background-color: #ff0048;
color:#FFFFFF;
}

.footerMuBtn02 a:hover {
background-color: #003772;
color:#FFFFFF;
}

.footerBottomIn {
width: 1200px;
margin: auto;
}

.footerBottomIn p,
.footerBottomIn p a {
font-size: 1.3rem;
color: #222;
}

.footerBottomIn p.copy {
font-size: 1.2rem;
color: #444;
background: #EEE;
text-align: right; 
}

.footer-l {
-ms-writing-mode: tb-rl;
-webkit-writing-mode: vertical-rl;
-o-writing-mode: vertical-rl;
writing-mode: vertical-rl;
-moz-transform: rotateZ(180deg);
-ms-transform: rotateZ(180deg);
-webkit-transform: rotateZ(180deg);
transform: rotateZ(180deg);
position: fixed;
right: 0;
text-align: center;
top: 0;
width: 60px;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
letter-spacing: .1em;
font-size: .8em;
font-weight: 300;
}


/*----*/
.fot_sitemap2Wrap {

}
.fot_sitemap2 {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
}

.fot_sitemap2 li:nth-child(n+2) {
margin-left: 40px;
}

.fot_sitemap2 li a {
color: #fff;
font-weight: 400;
}

.fot_sitemap2 h4::before {
content: "●";
display: block;
color: #fff;
}  

.footerBottom {
background-color: #eee;
padding: 50px 0;
}

.fot_link { width: 100%; margin: auto auto auto 0; display: flex; flex-wrap: wrap; }
.fot_link li { margin-right: 15px; }
.fot_link li a { font-size: 12px; position: relative; }
/*.fot_link li a::before { display: block; font-family: "Font Awesome 5 Free"; content: "\f0c1"; font-weight: bold; position: absolute; right: -20px; top: 2px; }*/


/*.fot_contact li a {
display: block;
position: relative;
}
.fot_contact a::before {
position: absolute;
content: "";
display: block;
width: 100%;
height: 100%;
top: 0;
z-index: -1;
}

.fot_contact a:hover::before {
opacity: .8;
-moz-transform: scale(1.1);
-webkit-transform: scale(1.1);
-ms-transform: scale(1.1);
transform: scale(1.1);
}


.fot_contact {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.fot_contact li {
-ms-flex-preferred-size: 50%;
flex-basis: 50%;
max-width: 50%;
overflow: hidden;
box-sizing: border-box;
}
.idx02BoxIn_list-tit { position: absolute; left: 0; right: 0; margin: auto; top: 120px; text-align: center; font-size: 20px;  }
.idx02BoxIn_list-tit h6 { font-size: 20px; color: #fff; letter-spacing: 0.1em; }
.idx02BoxIn_list-tit h6 i { padding-left: 10px; }

.idx02BoxIn_bg {
min-height: 260px;
}

.fot_contact01 a::before {
background: url("../images/com/document_bg.jpg") center center no-repeat;
background-size: auto;
-webkit-background-size: cover;
-moz-background-size: cover;
-ms-background-size: cover;
background-size: cover;
-webkit-transition: all .3s ease-out;
-moz-transition: all .3s ease-out;
-ms-transition: all .3s ease-out;
transition: all .3s ease-out;
}

.fot_contact02 a::before {
background: url("../images/com/contact_bg.jpg") center center no-repeat;
background-size: auto;
-webkit-background-size: cover;
-moz-background-size: cover;
-ms-background-size: cover;
background-size: cover;
-webkit-transition: all .3s ease-out;
-moz-transition: all .3s ease-out;
-ms-transition: all .3s ease-out;
transition: all .3s ease-out;
}*/


.f_contact_bg {
background: #47bcc6;
padding: 50px 0px 80px;
width: 100%;
margin-top: 100px;
}

.f_contact_box { width: 1000px; margin: 0 auto; margin-top: -100px; box-sizing: border-box; -webkit-box-shadow: 0 3px 40px rgb(39 115 174 / 16%);
box-shadow: 0 3px 40px rgb(39 115 174 / 16%);
background-color: #fff;
padding: 70px 50px; position: relative; position: relative; border-radius: 20px; overflow: hidden; }

.f_contact_box::before {
content: "";
display: block;
background: url("../images/com/f_contact_icon.png") 0 0 no-repeat;
width: 500px;
height: 272px;
background-size: 100%;
position: absolute;
top: 50px;
right: -30px;
opacity: .8;
z-index: 0;
}

.f_contact_box_tit {  text-align: left; font-weight: bold; margin-bottom: 20px; position: relative; }
.f_contact_box_tit span.en { color: #D6072E; font-size: 16px; display: block; }
.f_contact_box_tit span.jp { color: #005BAC; font-size: 35px; }
.f_contact_box_subtit { font-size: 24px; text-align: left;  color: #003953; margin-bottom: 50px; font-weight: bold; position: relative; }

.f_contact_list { width: 70%; margin: auto   auto auto 0; display: flex; flex-wrap: wrap; justify-content: space-around; position: relative; z-index: 10; }
.f_contact_list li { flex-basis: 48%; max-width: 48%; border-right: 1px solid #d8e0e9; box-sizing: border-box; padding-right: 2%; }
.f_contact_list li:nth-child(2n+2) { border-right: 0px; padding-right: 0px; }

.f_contact_list_tit { font-weight: 500; text-align: center; font-size: 18px; margin-bottom: 10px; }
.f_contact_btn { width: 100%; margin: 0 auto; }
.f_contact_btn a { display: block; background: #FFF100; color: #005BAC;  padding: 15px;  text-align: center; font-weight: bold; font-size: 16px; border-radius: 50px; }
.f_contact_btn a span.icon { font-size: 20px; margin-right: 10px; }
.f_contact_btn a:hover { background: #ffd600; }

.f_contact_list li:nth-child(2n+2) .f_contact_btn a { background: #D3D3D3; color: #fff; }
.f_contact_list li:nth-child(2n+2) .f_contact_btn a:hover { background: #999; }


/* contents
--------------------------------------------*/
.comBtnWrap {
padding-top: 50px;
}

.comBtn01,
.comBtn02 {
width: 100%;
max-width: 250px;
}

.comBtn01 a {
border: #fff 1px solid;
color: #fff;
background-color: #393939;
}

.comBtn02 a {
border: #393939 1px solid;
color: #393939 !important;
background-color: #fff;
box-shadow:3px 3px 0px 0px #393939;
}

.comBtn01 a,
.comBtn02 a {
font-size: 1.5rem;
font-weight: 500;
text-align: center;
display: block;
color: #fff;
padding: 10px;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
position: relative;
overflow: hidden;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.comBtn02 a:hover {
color: #fff !important;
box-shadow:0px 0px 0px 0px #393939;
transform: translate(3px,3px);
background-color: #e8a02b;
}

.btnR {
margin-left: auto;
margin-right: 0; 
}

.btnC {
margin-left: auto;
margin-right: auto;
}

.com_LedeBox{
position: relative;
border:1px solid #E5E5E5;
margin-bottom: 80px;
}
.com_LedeBox_In{
position: relative;
padding: 65px 70px;
}
.com_LedeBox::before,
.com_LedeBox::after,
.com_LedeBox_In::before,
.com_LedeBox_In::after{
position: absolute;
display:block;
content:"";
width: 101px;
height: 101px;
pointer-events: none;		
}
.com_LedeBox::before,
.com_LedeBox::after{
top:-1px;
}
.com_LedeBox_In::before,
.com_LedeBox_In::after{
bottom:-1px;	
}
.com_LedeBox::before,
.com_LedeBox_In::before{
left:-1px;	
}
.com_LedeBox::after,
.com_LedeBox_In::after{
right:-1px;
}
.com_LedeBox_In h4 {
font-size: 3rem;
font-weight: bold;
text-align: center;
margin-bottom: 40px;
}
.com_Lede01 {
font-size: 1.7rem;
line-height: 2em;
}
.com_Lede01 span {
font-weight: bold;
background:rgba(0, 0, 0, 0) linear-gradient(transparent 80%, #ffff7f 0%) repeat scroll 0 0;
}


}


/*pcとsp共通*/
/*----------------------------*/
.gridContainer {
overflow: hidden;
}

.imgSlide {
width: 100%;
height: 100%;
overflow: hidden;
}
.imgSlide .imgSlideIn {
width: inherit;
height: inherit;
opacity: 0;
}
.isPlay {
animation-name: play;
animation-duration: .5s;
animation-fill-mode: forwards;
animation-timing-function: cubic-bezier(.8,0,.5,1);
position: relative;
opacity: 1 !important;
}
.isPlay:before {
animation-name: maskOut;
animation-duration: .5s;
animation-delay: .5s;
animation-fill-mode: forwards;
animation-timing-function: cubic-bezier(.8,0,.5,1);
content: '';
position: absolute;
top: 0;
left: 0;
z-index: 1;
width: 100%;
height: 100%;
background-color: #E56A21;
}
@keyframes play {
from {
transform: translateX(-100%);
}
to {
transform: translateX(0);
}
}
@keyframes maskOut {
from {
transform: translateX(0);
}
to {
transform: translateX(100%);
}
}
/*----------------------------------------------------------------------*/







/*sp*/
@media only screen and (max-width: 768px) {



.main_link { flex-basis: 33.333%; max-width: 33.333%;  }
.main_link a { display: block; }
.main_link a img { width: 100%; height: auto; }





.document_img {
width: 250px;
margin: 0 auto 70px;
}

.document_img img {
width: 100%;
height: auto; 
}



.out_link > a { position: relative; }
.out_link > a::after {
content: '';
display: block;
font-size: 12px;
font-weight: bold; 
position: absolute;
top: 50%;
right: 15px;
font-family: "Font Awesome 5 Free";
content: "\f35d";
background-size: cover;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
transition: transform 0.2s;
}

.com_tit { font-size: 18px; font-weight: bold; text-align: center; margin-bottom: 30px; color: #333; line-height: 1.8em; }


.com_main_txt {
font-size: 16px;
text-align: center;
margin-bottom: 100px;
line-height: 2em;
}

.com_btn { margin: 0 auto; width: 200px; box-sizing: border-box; }
.com_btn a { font-size: 14px; color: #fff; position: relative; text-align: center;margin-top: 30px; background: #47bcc6;  border-radius: 50px; width: 200px; }
.com_btn a { color: #fff; font-size: 14px; font-weight: bold; display: block; padding: 15px; box-sizing: border-box; }
.com_btn a::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 30px;  font-size: 16px; top: 18px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.com_btn a:hover::before {right: 20px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.com_btn a:hover {  background: #47bcc6; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }

.gridContainer {
width:100%;
padding:0;
clear: none;
float: none;
margin:0 auto;
}
#div1 {
}
.zeroMargin_desktop {
margin-left: 0;
}
.hide_desktop {
display: none;
}

.pcBr {
display: none;
}

.spBr {
display: inline-block;
}

.pc {
display: none;
}

.sp {
display: block;
}

.w80p {
width: 100%;
margin-left: auto;
margin-right: auto;
}

.lH2 {
line-height: 2em;
}

/* com
--------------------------------------------*/
.btnList {
width: 100%;
}

.btnList li {
width: 46%;
float: left;
box-shadow: none;
margin-right: 8%;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.btnList li:nth-child(2n) {
margin-right: 0;
}

.btnList li:nth-child(n+3) {
margin-top: 8%;
}

.btnList li:hover {
box-shadow: 0 0 20px #d0d0d0;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.btnList li img {
-moz-transition: -moz-transform 0.3s linear;
-webkit-transition: -webkit-transform 0.3s linear;
-o-transition: -o-transform 0.3s linear;
-ms-transition: -ms-transform 0.3s linear;
transition: transform 0.3s linear;
}

.btnList li:hover img {
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-o-transform: scale(1.1);
-ms-transform: scale(1.1);
transform: scale(1.1);
}

.btnListImg {
overflow: hidden;
}

.btnListImg .boxInner {
opacity: 0
}

.btnListTxt {
padding: 10px 5px;
}

.visible {
border-bottom: none;
border-right: none;
}

.btnListTxt h3 {
font-size: 1.9rem;
margin-bottom: 5px;
font-weight: 500;
}

.btnListTxt h4 {
font-size: 1.3rem;
margin-bottom: 20px;
font-weight: 500;
}

.btnListTxt p {
text-align: right;
font-size: 1.2rem;
font-weight: 500;
padding-right: 10px;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
} 

.visible p {
color: #e00011!important;
padding-right: 0px;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

#pan_area {
display: none;
}

#totop {
bottom: 120px;
display: block;
position: fixed;
right: 20px;
z-index: 2000;
width: 45px;
}

#totop a {
display: block;
width: 45px;
height: 45px;
text-indent: -1000em;
overflow: hidden;
background: url(../images/com/btn_scroll_top.png) 0 0 no-repeat;
background-size: auto auto;
background-size: 100% auto;
}

#document_img {
display: none!important;
}






.com_main_txt { font-size: 16px; text-align: center; margin-bottom: 50px; line-height: 1.8em; }
#hedImg {
padding: 30px 0px;
margin-bottom: 50px;
position: relative; 
background: #D3F4EC;
}
.hed_tit h2 {
font-weight: bold;
color: #222;
text-align: center;
font-size: 2rem;
line-height: 1.5;
letter-spacing: 0.12em;
}

.hed_tit p.en {
text-align: center;
font-size: 1.8rem;
font-family: 'Open Sans', sans-serif;
letter-spacing: 0.1em;
color: #D6072E;
font-weight: normal;
position: relative;
font-weight: bold;
}

#contents {
width: 100%;
margin: auto;
overflow: hidden;
}

.contentsIn {
width: 98%;
margin: 0 auto;
}

.fL {
float: left;
}

.fR {
float: right;
}

.w1200 {
width: 96%;
margin-left: auto;
margin-right: auto;
}


.w1100 {
width: 96%;
margin-left: auto;
margin-right: auto;
}

.comPd01 {
padding: 0 0 70px;
}

.comInBox01 {
margin-bottom: 60px;
}

.comInBox01:last-child {
margin-bottom: 0px;
}

.comPd_80 {
padding: 40px 0;
}

.comPd_top80 {
padding: 40px 0 0;
}

.p_relative {
position: relative;
}

.bgGray {
background-color: #ecf0f4;
}

.bgColorSide h3 {
display: inline-block;
overflow: hidden;
position: relative;
z-index: 0;
line-height: 1em;
}

.bgColorSide h3 span {
line-height: 1em;
}

.bgColorSide h3:before {
background: #1d6dab; /* Old browsers */
background: -moz-linear-gradient(left, #1d6dab 0%, #009fe6 50%, #98e6d2 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, #1d6dab 0%,#009fe6 50%,#98e6d2 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, #1d6dab 0%,#009fe6 50%,#98e6d2 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1d6dab', endColorstr='#98e6d2',GradientType=1 ); /* IE6-9 */
content: '';
display: block;
height: 100%;
position: absolute;
transform: translateX(-101%);
transition:all .5s .3s ease; 
width: 100%;
z-index: 1;		
}

.bgColorSideIn {
display: inline-block;
opacity: 0;
transition:all .8s 0s ease;
}

.active h3:before {
transform: translateX(101%);
}

.active .bgColorSideIn {
opacity: 1;
}

.txtC {
text-align: center;
}

/*-----------*/
.bgWhite {
background-color: #fff;
}

.comPd70 {
padding: 40px 0;
}

.pt80 {
padding-top: 0;
}

.comBtn {
width: 280px;
margin-left: auto;
margin-right: auto;
}

.comBtn a {
display: block;
background-color: #1b1f79;
color: #fff;
text-align: center;
font-size: 1.6rem;
padding: 10px;
position: relative;
}

.comBtn a:before {
font-family: "Font Awesome 5 Free";
content: "\f105";
position: absolute;
font-weight: bold;
/*top: 50%;*/
right: 30px;
font-size: 1.6rem;
-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

.comBtn a:hover {
background-color: #e00011;
}

.comBtn a:hover:before {
right: 20px;
}

.waku_fff {
border: #fff 1px solid;
}

.rightBtn {
margin-left: auto;
margin-right: auto;
}

.centerBtn {
margin-left: auto;
margin-right: auto;
}

.idxTit {
width: 100%;
margin-top: 30px;
margin-bottom: 30px;
}

.idxTit h3 {
text-align: center;
font-size: 2.5rem;
letter-spacing: 0.05em;
margin-bottom: 10px;
}

.idxTit p {
text-align: center;
font-size: 1.6rem;
}

.idxTit2 {
width: 100%;
margin-bottom: 40px;
}

.idxTit2 h3 {
text-align: center;
font-size: 2.5rem;
letter-spacing: 0.05em;
margin-bottom: 10px;
}

.idxTit2 p {
text-align: center;
font-size: 1.6rem;
}

.idxTit2 h3,
.idxTit2 p {
text-shadow: 
#fff 2px 0px,  #fff -2px 0px,
#fff 0px -2px, #fff 0px 2px,
#fff 2px 2px , #fff -2px 2px,
#fff 2px -2px, #fff -2px -2px,
#fff 1px 2px,  #fff -1px 2px,
#fff 1px -2px, #fff -1px -2px,
#fff 2px 1px,  #fff -2px 1px,
#fff 2px -1px, #fff -2px -1px;
}

.idxTit3 {
width: 100%;
margin-bottom: 40px;
}

.idxTit3 h3 {
text-align: center;
font-size: 2.5rem;
letter-spacing: 0.05em;
margin-bottom: 10px;
color: #fff;
}

.idxTit3 p {
text-align: center;
font-size: 1.6rem;
color: #fff;
}

.c_fff {
color: #fff;
}

.comBox {
width: 100%;
padding-bottom: 50px;
}

.comBox:last-child {
padding-bottom: 0px;
}
/*中ページのヘッド*/
#main--image {
position: relative;
z-index: 2;
overflow: hidden;
}
#main--image:before {
content: "";
position: absolute;
left: -100%;
bottom: 0;
width: 90%;
height: 88%;
background-size: cover;
background: #2a2a2a;
z-index: 2;
-webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
-webkit-transition-property: left;
-moz-transition-property: left;
-ms-transition-property: left;
-o-transition-property: left;
transition-property: left
}
#main--image.active:before {
left: 0
}

#main--image.active h2 {
line-height: 1.2;
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
transform: translateY(0px)
}
#main--image.active h2 span {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
transform: translateY(0px)
}
#main--image.active .main--bg:before {
left: 100%
}
#main--image.active .main--bg:after {
left: 100%
}

#main--image .main--bg {
position: absolute;
right: 0;
top: 0;
width: 90%;
height: 88%;
background: #303030;
z-index: 3;
background-repeat: no-repeat;
background-position: center;
-webkit-background-size: cover;
-o-background-size: cover;
background-size: cover
}
#main--image .main--bg:before {
content: "";
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: #303030;
-webkit-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-o-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-webkit-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-o-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-webkit-transition-delay: .2s;
-moz-transition-delay: .2s;
-ms-transition-delay: .2s;
-o-transition-delay: .2s;
transition-delay: .2s
}
#main--image .main--bg:after {
content: "";
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: #f3f4f5;
-webkit-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-o-transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1);
-webkit-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-moz-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
-o-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1)
}

#main--image h2 {
font-family: 'Roboto', sans-serif;
text-shadow: 0px 0px 3px rgba(0,0,0,0.6);
box-sizing: border-box;
position: relative;
width: 100%;
height: 100%;
z-index: 4;
padding-top: 5vh;
padding-bottom: 8vh;
padding-left: 3%;
padding-right: 3%;
margin-bottom: 0;
color: #FFF;
font-size: 2.8rem;
letter-spacing: 4px;
font-weight: bold;
text-align: center;
opacity: 0;
-webkit-transform: translateY(20px);
-moz-transform: translateY(20px);
-ms-transform: translateY(20px);
transform: translateY(20px);
-webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-property: transform, opacity;
-moz-transition-property: transform, opacity;
-ms-transition-property: transform, opacity;
-o-transition-property: transform, opacity;
transition-property: transform, opacity;
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
}
#main--image h2 span {
display: block;
font-size: 1.5rem;
padding-top: 10px;
letter-spacing: 2px;
opacity: 0;
-webkit-transform: translateY(20px);
-moz-transform: translateY(20px);
-ms-transform: translateY(20px);
transform: translateY(20px);
-webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transition-property: transform, opacity;
-moz-transition-property: transform, opacity;
-ms-transition-property: transform, opacity;
-o-transition-property: transform, opacity;
transition-property: transform, opacity;
-webkit-transition-delay: .8s;
-moz-transition-delay: .8s;
-ms-transition-delay: .8s;
-o-transition-delay: .8s;
transition-delay: .8s
}

/*//////*/

/*-----タイトル-----*/
.comTit__obi01 {
width: 100%;
position: relative;
padding-top: 40px;
}

.comTit__obi01:before {
position: absolute;
content: "";
width: 100%;
height: 180px;
top: 0;
right: 0;
background: #f7f5f2;
z-index: -1;
}

.comTit__obi01 h3 {
text-align: center;
font-family: 'Slabo 27px', serif;
font-size: 3rem;
letter-spacing: 0.1em;
color: #ae9373;
font-weight: normal;
position: relative;
padding-bottom: 35px;
margin-bottom: 30px;
}

.comTit__obi01 h3:after {
width: 1px;
height: 20px;
background: #ae9373;
content: "";
position: absolute;
bottom: 0;
left: 50%;
}

.comTit01 {
font-size: 2.8rem;
line-height: 1.5;
margin-bottom: 20px;
letter-spacing: 0.1em;
text-align: center;
color: #cd4a38;
}

.comTit01Sub {
font-size: 1.7rem;
line-height: 1.6;
letter-spacing: 0.1em;
text-align: center;
}

.hedTitBox {
margin-bottom: 35px;
}

.comTit02 {
text-align: center;
font-size: 2rem;
margin-bottom: 20px;
font-weight: 500;
}
.comTit02 span {
position: relative;
display: inline-block;
padding: 0 40px;
}
.comTit02 span:before, .comTit02 span:after{
content: '';
position: absolute;
top: 50%;
display: inline-block;
width: 32px;
height: 1px;
background-color: #303030;
-moz-transform: rotate(-60deg);
-webkit-transform: rotate(-60deg);
-ms-transform: rotate(-60deg);
transform: rotate(-60deg);
}
.comTit02 span:before {left:0;}
.comTit02 span:after {right: 0;}

.comTit03 {
position: relative;
display: inline-block;
padding-left: 25px;
font-size: 1.9rem;
font-weight: 500;
letter-spacing: 0.01em;
margin-bottom: 20px;
}

.comTit03:before {
content: '';
position: absolute;
top: 50%;
left:0;
display: inline-block;
margin-top: -2px;
width: 15px;
height: 2px;
background-color: #e8a02b;
}

.comTit04 {
position: relative;
padding: 0.8em 0;
margin-bottom: 15px;
font-size: 1.7rem;
font-weight: 500;
text-align: center;
}
.comTit04::before,
.comTit04::after {
position: absolute;
left: 0;
content: '';
width: 100%;
height: 6px;
box-sizing: border-box;
}
.comTit04::before {
top: 0;
border-top: 2px solid #1b1f79;
border-bottom: 1px solid #1b1f79;
}
.comTit04::after {
bottom: 0;
border-top: 1px solid #1b1f79;
border-bottom: 2px solid #1b1f79;
}

.comTit05 {
color: #e8a02b;
font-size: 2rem;
line-height: 1.5;
margin-bottom: 15px;
}

.com_table {
border-top: 1px solid #dfdfdf;
width: 100%;
margin:0 0 40px;
}
	
.com_table th {
background:#F0F0F0;
width:96%;
background:none;
border-bottom:none;
padding: 4% 2%;
text-align: center;
display: block;
position: relative;
border-bottom: #dfdfdf dashed 1px;
}

	
.com_table th span {
font-style: italic;
font-family: 'Osaka','Verdana';
}	

.com_table td {
border-bottom: 1px solid #dfdfdf;
border-left: none;
padding: 4% 2%;
display: block;
}

.com_table2 {
width: 100%;
}

.com_table2 th {
display: block;
color: #FFF;
line-height: 1.1;
padding: 1.0em;
background: #2a2a2a;
text-align: center;
}

.com_table2 td {
display: block;
padding: 1.0em;
border-bottom: solid 1px #E4E4E4;
vertical-align: middle;
}

/*カードデザイン*/
.com_list {
width: 100%;
margin: 0 auto;
}

.com_list li {
width: 100%;
margin-bottom: 30px;
}

.com_list li:nth-child(2n+2) {
margin-right: 0px;
}

.l-card {
transition: 0.5s;
overflow: hidden;
width: 96%;
padding: 0;
margin: 24px auto;
background: #fff;
background: #fff;
box-shadow: 6px 6px rgba(0, 0, 0, 0.2);
}

.l-card:hover{
transform: translate(5px,5px);
box-shadow: 1px 1px rgba(0, 0, 0, 0.2);
}

.l-card:hover .thumbnail-wrapper::after {
 opacity: 1;
 width: 800px;
 height: 800px;
 border-width: 40px;
}

.l-card .thumbnail-wrapper img {
width: 100%;
height: auto;
}

.l-card:hover .thumbnail-wrapper img {
transform: scale(1.1);
}

.l-card:hover .more-text {
 opacity: 1;
 letter-spacing: 8px;
}

.l-thumbnail {
position: relative;
overflow: hidden;
width: 100%;
height: auto;
}

.l-thumbnail .more-text {
transition: 0.5s;
z-index: 2;
position: absolute;
top: 50%;
transform: translateY(-50%);
opacity: 0;
display: block;
width: 100%;
color: #fff;
font-size: 16px;
font-weight: lighter;
letter-spacing: 1px;
text-align: center;
text-transform: uppercase;
}

.thumbnail-wrapper {
display: block;
margin: 0;
padding: 0;
}

.thumbnail-wrapper::after {
transition: opacity 0.3s, width 0.8s 0.1s, height 0.8s 0.1s, border-width 0.4s 0.1s;
content: "";
box-sizing: content-box;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
width: 0px;
height: 0px;
border-radius: 50%;
border: 0px solid  #993333;
background:rgba(204, 76, 47, 0.7);
opacity: 0;
}

.thumbnail-wrapper img {
transition: 0.5s;
display: block;
max-width: 100%;
}

.text-content {
padding: 16px;
}

.text-content .title {
margin: 0 0 12px 0;
font-size: 20px;
}

.text-content .caption {
margin: 0 0 12px 0;
font-size: 14px;
color: #555;
font-weight: lighter;
}

.content-meta {
overflow: hidden;
width: 100%;
font-size: 12px;
text-align: right;
}

.content-meta .date {
text-align: right;
color: #aaa;
}

a:hover .content-meta .date {
color: #993333;
}

/*背景色*/
.comBg01 {
background-color: #f3f2e9;
}


/* header
--------------------------------------------*/
#header {
width: 100%;
display: flex;
display: -ms-flexbox;
justify-content: space-between;
-webkit-justify-content: space-between;
}

.mainMenu {
box-sizing: border-box;
width: 100%;
align-items: center;
height: 60px;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}

.logo_Hed {
width: 80px;
margin-left: 15px; 
}

.logo_Hed img {
width: 100%;
height: auto; 
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

.logo_Hed a {
display: block;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

.mainMenuInWrap,
.mainMenuIn {
display: none;
}

.inqBox {
display: none;
}
/*
.sp_list {
display: block;
width: 40px;
height:60px;
float: right;
margin: 0px 5px 0 0;
padding: 0;
list-style-type: none;
}

.sp_list li {
width: 40px;
height: 40px;
float: left;
margin: 0;
padding: 0px;
text-align: center;
font-weight: bold;
}

.sp_list li a {
display: block;
color: #222;
}

.sp_list li i {
font-size: 30px;
line-height: 30px;
}
*/




/* footer
--------------------------------------------*/
#footer {
box-sizing: border-box;
width: 100%;
padding: 30px 0 0;
margin-bottom: 60px;
}

.footerTopIn {
padding-bottom: 15px;
/*margin-bottom: 15px;
border-bottom: 1px solid #dddddd;*/
}

.footerCp__img {
width: 150px;
margin: 0 auto 15px;
}

.footerCp__img img {
width: 100%;
height: auto;
}

.footerCp h3 {
display: none;
/*font-size: 1.4rem;
margin-bottom: 10px;
color: #fff;
text-align: center;*/
}

.footerCp p {
color: #222;
font-size: 1.3rem;
line-height: 1.8;
letter-spacing: 0.05em;
text-align: center;
}

.footerMu {
display: none;
}

.footerMu a {
color: #222;
font-size: 1.3rem;
display: block;
} 

.footerMuList {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
margin-bottom: 45px;
}

.footerMuList li {
margin-right: 60px;
}

.footerMuList li:last-child {
margin-right: 0px;
}

.footerMuBtnWrap {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end;
}

.footerMuBtn02 {
margin-left: 50px;
}

.footerMuBtn01 a,
.footerMuBtn02 a {
padding: 8px 60px;
border: #fff 1px solid;
background-color: #333333;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

.footerMuBtn01 a:hover {
background-color: #ff0048;
}

.footerMuBtn02 a:hover {
background-color: #cd4a38;
}

.footerBottomIn {
width: 100%;
}

/*.footerBottomIn p:first-child {
display: none;
}
*/
.footerBottomIn p,
.footerBottomIn p a {
font-size: 1.3rem;
}

.footerBottomIn p.copy {
font-size: 1.2rem;
padding: 8px;
text-align: center;
color: #444;
background-color: #EEE;
}

.footer-l {
display: none;
}

.fot_sitemap2 {
display: none;
}

.fot_link { display: none; }



.fot_contact li a {
display: block;
position: relative;
}
.fot_contact a::before {
position: absolute;
content: "";
display: block;
width: 100%;
height: 100%;
top: 0;
z-index: -1;
}

.fot_contact a:hover::before {
opacity: .8;
-moz-transform: scale(1.1);
-webkit-transform: scale(1.1);
-ms-transform: scale(1.1);
transform: scale(1.1);
}


.fot_contact {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.fot_contact li {
width: 100%;
overflow: hidden;
box-sizing: border-box;
}
/*
.fot_contact li:nth-last-child(2n) {
border-right: #fff 1px solid;
}*/
.idx02BoxIn_list-tit { position: absolute; left: 0; right: 0; margin: auto; top: 80px; text-align: center; font-size: 20px;  }
.idx02BoxIn_list-tit h6 { font-size: 18px; color: #fff; letter-spacing: 0.1em; }
.idx02BoxIn_list-tit h6 i { padding-left: 10px; }

.idx02BoxIn_bg {
min-height: 200px;
}

.fot_contact01 a::before {
background: url("../images/com/document_bg.jpg") center center no-repeat;
background-size: auto;
-webkit-background-size: cover;
-moz-background-size: cover;
-ms-background-size: cover;
background-size: cover;
-webkit-transition: all .3s ease-out;
-moz-transition: all .3s ease-out;
-ms-transition: all .3s ease-out;
transition: all .3s ease-out;
}

.fot_contact02 a::before {
background: url("../images/com/contact_bg.jpg") center center no-repeat;
background-size: auto;
-webkit-background-size: cover;
-moz-background-size: cover;
-ms-background-size: cover;
background-size: cover;
-webkit-transition: all .3s ease-out;
-moz-transition: all .3s ease-out;
-ms-transition: all .3s ease-out;
transition: all .3s ease-out;
}


.f_contact_bg {
background: #47bcc6;
padding: 50px 0px 80px;
width: 100%;
margin-top: 100px;
}

.f_contact_box { width: 90%; margin: 0 auto; margin-top: -100px; box-sizing: border-box; -webkit-box-shadow: 0 3px 99px rgb(39 115 174 / 16%);
box-shadow: 0 3px 99px rgb(39 115 174 / 16%);
background-color: #fff;
padding: 30px; position: relative; overflow: hidden; border-radius: 10px;  }
.f_contact_box::before {
content: "";
display: block;
background: url("../images/com/f_contact_icon.png") 0 0 no-repeat;
width: 420px;
height: 228px;
background-size: 100%;
position: absolute;
bottom: 20px;
right: -250px;
opacity: .8;
z-index: 0;
}



.f_contact_box_tit {  text-align: center; font-weight: bold; margin-bottom: 20px; position: relative; }
.f_contact_box_tit span.en { color: #D6072E; font-size: 16px; display: block; }
.f_contact_box_tit span.jp { color: #005BAC; font-size: 24px; }
.f_contact_box_subtit { font-size: 16px; text-align: center;  color: #003953; margin-bottom: 50px; font-weight: bold; position: relative; }

.f_contact_list { width: 100%; margin: 0 auto;  position: relative; z-index: 10; }
.f_contact_list li {width: 100%; margin: 0 auto;  box-sizing: border-box; padding-bottom: 10px; }
.f_contact_list li:nth-child(2n+2) { border-bottom: 0px; padding-bottom: 0px; margin-top: 10px; }

.f_contact_list_tit { font-weight: 500; text-align: center; font-size: 18px; margin-bottom: 10px; }
.f_contact_btn { width: 100%; margin: 0 auto; }
.f_contact_btn a { display: block; background: #FFF100; color: #005BAC; padding: 15px;  text-align: center; font-weight: bold; font-size: 16px; border-radius: 50px; }
.f_contact_btn a span.icon { font-size: 20px; margin-right: 10px; }
.f_contact_btn a:hover { background: #ffd600; }

.f_contact_list li:nth-child(2n+2) .f_contact_btn a { background:#92D1D3; color: #fff;  }
.f_contact_list li:nth-child(2n+2) .f_contact_btn a:hover { background: #999; }


/* contents
--------------------------------------------*/
.comBtnWrap {
padding-top: 30px;
}

.comBtn01,
.comBtn02 {
width: 100%;
max-width: 200px;
}

.comBtn01 a {
border: #fff 1px solid;
color: #fff;
background-color: #393939;
}

.comBtn02 a {
border: #393939 1px solid;
color: #393939 !important;
background-color: #fff;
box-shadow:3px 3px 0px 0px #393939;
}

.comBtn01 a,
.comBtn02 a {
font-size: 1.5rem;
font-weight: 500;
text-align: center;
display: block;
color: #fff;
padding: 10px;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
position: relative;
overflow: hidden;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.comBtn02 a:hover {
color: #fff !important;
box-shadow:0px 0px 0px 0px #393939;
transform: translate(3px,3px);
background-color: #e8a02b;
}

.btnR {
margin-left: auto;
margin-right: 0; 
}

.btnC {
margin-left: auto;
margin-right: auto;
}

.com_LedeBox{
position: relative;
border:1px solid #E5E5E5;
margin-bottom: 80px;
}
.com_LedeBox_In{
position: relative;
padding: 30px 15px;
}
.com_LedeBox::before,
.com_LedeBox::after,
.com_LedeBox_In::before,
.com_LedeBox_In::after{
position: absolute;
display:block;
content:"";
width: 50px;
height: 50px;
}
.com_LedeBox::before,
.com_LedeBox::after{
top:-1px;
}
.com_LedeBox_In::before,
.com_LedeBox_In::after{
bottom:-1px;	
}
.com_LedeBox::before,
.com_LedeBox_In::before{
left:-1px;	
}
.com_LedeBox::after,
.com_LedeBox_In::after{
right:-1px;
}

.com_LedeBox_In h4 {
font-size: 2.4rem;
line-height: 1.8;
font-weight: bold;
text-align: center;
margin-bottom: 30px;
}


.com_Lede01 {
font-size: 1.7rem;
line-height: 1.8em;
}

.com_Lede01 span {
font-weight: bold;
background:rgba(0, 0, 0, 0) linear-gradient(transparent 80%, #ffff7f 0%) repeat scroll 0 0;
}

.sp_box { position: fixed; bottom: 0; left: 0; width: 100%; z-index: 10000; }
.sp_box_time { padding: 5px; text-align: center; color: #fff; background: #cf5063; font-size: 12px;  }
.sp_list { width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between; height: 60px;  background: #92D1D3; align-items: center; }
.sp_list li {  flex-basis: 20%; max-width: 20%; text-align: center; display: flex; align-items: center; justify-content: center; box-sizing: border-box; border-right: 1px solid #fff; }
.sp_list li:last-child { border-right: 0px;  }
.sp_list li a { list-style: none; color: #fff; text-align: center; }
.sp_list li a:hover { opacity: .6; }
.sp_list li i { font-size: 22px; }
.sp_list li span.tit { display: block; text-align: center; font-weight: bold; font-size: 12px; line-height: 1em;  }
.sp_list li { list-style: none!important; }

.fixed_link { display: none; }


}