@charset "utf-8";
/* CSS Document */

/*PC*/
@media print, screen and (min-width: 769px) {
#contents { position: relative; }
#contents::before { position: fixed!important; left: -150px; width: 600px; height: 600px; background: url(../images/index/bg01.jpg); background-size: contain; background-repeat: no-repeat; z-index: -1; top: 0; content: ""; display: block; }
#contents::after { position: fixed!important; right: -150px; width: 600px; height: 600px; background: url(../images/index/bg01.jpg); background-size: contain; background-repeat: no-repeat; z-index: -1; bottom: 0px; content: ""; display: block; }

/* com
--------------------------------------------*/
.main_box { margin-bottom: 80px; }
.main_tit { font-size: 3.2rem; text-align: left; font-weight: 400; color: #028ce4; line-height: 2em; }
.main_txt { text-align: left; line-height: 2em; font-size: 1.6rem; margin-top: 30px; }

#hedImg {
width: 100%;
min-width: 1200px;
margin: auto;
position: relative;
margin-top: 180px;
}

.hed_subtit { font-size: 18px; font-weight: bold; text-align: left; margin-top: 30px; }
.hed_bg_txt { font-weight: 900; font-size: 200px; color: rgba(2,140,228,0.1); position: absolute; right: -30px; bottom: -150px; }

.hed_tit h2 {
/*background-color: #fff;*/
display: inline-block;
text-align: left;
}

.hed_tit h2 span.en{
/*text-align: left;*/
font-size: 60px;
color: #028ce4;
font-weight: 900;
line-height: 1.5;
letter-spacing: 0.12em;
display: block;
}

.hed_tit h2 span.jp {
display: block;
line-height: 1.8em;
font-size: 16px;
font-weight: bold;
letter-spacing: 0.1em;
}

.imgbox { width: calc(100% - 120px); margin: 0 auto 80px; }
.imgbox_img { width: 100%; margin: 0 auto; }
.imgbox_img img { width: 100%; height: auto; }

.com_subtit { font-size: 2.4rem; font-weight: 400; text-align: center; position: relative; margin-bottom: 80px; }
.com_subtit::after { position: absolute; content: ""; width: 0px; height: 2px; border-radius: 1px; border-left: 15px solid rgba(2,140,228,1); border-right: 15px solid rgba(228,2,46,1); left: 0; right: 0; margin: auto; bottom: -30px; display: block; }
.com_subtit span.en { font-size: 2.2rem; font-weight: bold; display: block; color: #028ce4; margin-bottom: 15px; }
.com_subsubtit { font-size: 2rem; font-weight: 400; text-align: left; line-height: 2em; color: #028ce4; text-align: center; margin-bottom: 15px; }
.com_txt { text-align: center; }

/*---------------*/

#strenght00 { margin-bottom: 80px; }
.strength_box { margin-top: 50px; }

.strength_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; }
.strength_list li { width: 32%; margin-right: 2%; position: relative; }
.strength_list li:nth-of-type(1)::after { position: absolute; top: 50%; margin-top: -60px; right: -20px; font-size: 40px; content: "+"; display: block; }
.strength_list li:nth-of-type(2)::after { position: absolute; top: 50%; margin-top: -60px; right: -20px; font-size: 40px; content: "＝"; display: block; }
.strength_list li:nth-child(3n+3) { margin-right: 0px; }
.strength_list_icon { width: 150px; margin: 0 auto 30px; }
.strength_list_icon img { width: 100%; height: auto; }
.strength_list_tit { text-align: center; font-weight: 500; font-size: 1.6rem; }
.strength_list_tit span { text-align: left!important; font-size: 1.4rem; display: block; margin-top: 5px; }
.strength_list_txt { text-align: left; margin-top: 50px; }


/*--idx03Box---------------*/
.idx03Box {

}

.idx03Box h4.idxTit_en,
.idx03Box h5.idxTit_jp {
text-align: center;
}

.idx03Box_list {
margin-bottom: 80px;
}

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

.idx03Box_list li {
-ms-flex-preferred-size: 30%;
flex-basis: 30%;
max-width: 30%;
margin-right: 5%;
-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;
}

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

.idx03Box_list li:nth-child(n+4) {
margin-top: 5%;
}

.idx03Box_h4 {
padding-top: 10px;
text-align: left;
font-size: 1.7rem;
font-weight: 400;
line-height: 30px;
background: #fff;
padding-left: 45px;
}
.idx03Box_h4 span {
position: relative;
}
.idx03Box_h4 span::before {
position: absolute;
top: 0;
bottom: 0;
left: -45px;
display: block;
width: 30px;
height: 2px;
margin: auto;
content: '';
background-color: #028ce4;
}

.idx03Box_h5 {
padding-top: 10px;
font-size: 1.5rem;
font-weight: 400;
text-align: left;
background: #fff;
}

.idx03Box_list li:hover .idx03Box_h4 {
color: #028ce4;
}

figure.snip1194 {
color: #fff;
position: relative;
overflow: hidden;
/*  margin: 10px;
min-width: 220px;
max-width: 310px;
max-height: 220px;*/
width: 100%;
background: #e7f6ff;
color: #000000;
text-align: center;
}
figure.snip1194 * {
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-transition: all 0.6s ease;
transition: all 0.6s ease;
}
figure.snip1194 img {
opacity: 1;
width: 100%;
-webkit-transition: opacity 0.35s;
transition: opacity 0.35s;
}
figure.snip1194 figcaption {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: calc(100% - 93px);;
}
figure.snip1194 h2,
figure.snip1194 p {
margin: 0;
position: absolute;
width: 100%;
left: 0;
opacity: 0;
}
figure.snip1194 h2 {
padding: 0 30px;
margin-bottom: 10px;
display: inline-block;
text-transform: uppercase;
font-weight: 400;
color: #028ce4;
font-style: italic;
bottom: 50%;
-webkit-transform: translate3d(0%, -100%, 0);
transform: translate3d(0%, -100%, 0);
}
figure.snip1194 h2 span {
font-weight: 400;
}
figure.snip1194 p {
top: 50%;
padding: 0 50px;
font-size: 1.6rem;
font-weight: 400;
-webkit-transform: translate3d(0%, 100%, 0);
transform: translate3d(0%, 100%, 0);
}
figure.snip1194 a {
left: 0;
right: 0;
top: 0;
bottom: 0;
position: absolute;
}
figure.snip1194:hover img,
figure.snip1194.hover img {
opacity: 0.2;
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
figure.snip1194:hover figcaption h2,
figure.snip1194.hover figcaption h2,
figure.snip1194:hover figcaption p,
figure.snip1194.hover figcaption p {
-webkit-transform: translate3d(0%, 0%, 0);
transform: translate3d(0%, 0%, 0);
}
figure.snip1194:hover figcaption h2,
figure.snip1194.hover figcaption h2 {
opacity: 0.9;
}
figure.snip1194:hover figcaption p,
figure.snip1194.hover figcaption p {
opacity: 0.9;
}


/*--idx05Box---------------*/
.idx05Box {

}

.idx05Box h4.idxTit_en,
.idx05Box h5.idxTit_jp {
text-align: center;
}

.idx05_list {
width: 100%;
margin: auto;
}
.idx05_list ul {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.idx05_list ul.idx05_list-t {
width: 100%;
margin: 0 auto 10px;
}
.idx05_list ul.idx05_list-t li {
-ms-flex-preferred-size: 15%;
flex-basis: 15%;
max-width: 15%;
margin-right: 2%;
}
.idx05_list ul.idx05_list-t li:nth-child(6n) {
margin-right: 0%;
}
/*.idx05_list ul.idx05_list-t li:nth-child(n+6) {
margin-top: 2.5%;
}*/
.idx05_list ul.idx05_list-b li {
-ms-flex-preferred-size: 15%;
flex-basis: 15%;
max-width: 15%;
margin-right: 2%;
}
.idx05_list ul.idx05_list-b li:nth-child(6n) {
margin-right: 0%;
}
.idx05_list ul.idx05_list-b li:nth-child(n+7) {
margin-top: 2.5%;
}


}




/*----------------------------------------------------*/




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

#contents { position: relative; }
#contents::before { position: fixed; left: -100px; width: 400px; height: 400px; background: url(../images/index/bg01.jpg); background-size: contain; background-repeat: no-repeat; z-index: -1; top: 0; content: ""; display: block; }
#contents::after { position: fixed; right: -100px; width: 400px; height: 400px; background: url(../images/index/bg01.jpg); background-size: contain; background-repeat: no-repeat; z-index: -1; bottom: 0px; content: ""; display: block; }

/* com
--------------------------------------------*/
.main_box { margin-bottom: 50px; }
.main_tit { font-size: 2.4rem; text-align: left; font-weight: 400; color: #028ce4; line-height: 2em; }
.main_txt { text-align: left; line-height: 2em; font-size: 1.4rem; margin-top: 30px; }

#hedImg {
width: 100%;
margin: auto;
position: relative;
}

.hed_subtit { font-size: 18px; font-weight: bold; text-align: left; margin-top: 30px; }
.hed_bg_txt { font-weight: 900; font-size: 70px; color: rgba(2,140,228,0.1); position: absolute; right: -10px; bottom: -50px; }

.hed_tit h2 {
/*background-color: #fff;*/
display: inline-block;
text-align: left;
}

.hed_tit h2 span.en{
/*text-align: left;*/
font-size: 30px;
color: #028ce4;
font-weight: 900;
line-height: 1.5;
letter-spacing: 0.12em;
display: block;
}

.hed_tit h2 span.jp {
display: block;
line-height: 1.8em;
font-size: 16px;
font-weight: bold;
letter-spacing: 0.1em;
}

.imgbox { width: calc(100% - 30px); margin: 0 auto 80px; }
.imgbox_img { width: 100%; margin: 0 auto; }
.imgbox_img img { width: 100%; height: auto; }

.com_subtit { font-size: 2rem; font-weight: 400; text-align: center; position: relative; margin-bottom: 50px; }
.com_subtit::after { position: absolute; content: ""; width: 0px; height: 2px; border-radius: 1px; border-left: 15px solid rgba(2,140,228,1); border-right: 15px solid rgba(228,2,46,1); left: 0; right: 0; margin: auto; bottom: -15px; display: block; }
.com_subsubtit { font-size: 1.6rem; font-weight: 400; text-align: left; line-height: 1.8em; color: #028ce4; text-align: center; margin-bottom: 15px; }
.com_subtit span.en { font-size: 1.8rem; font-weight: bold; display: block; color: #028ce4; margin-bottom: 15px; }
.com_txt { text-align: center; }

/*---------------*/
.pic_box { margin-bottom: 50px; }
.pic_01 { width: 100%; margin: 0 auto; margin-bottom: 30px;  }
.pic_01 img { width: 100%; height: auto; }
.pic_txt { text-align: center; }

/*---------------*/

#strenght00 { margin-bottom: 50px; }
.strength_box { margin-top: 50px; }

.strength_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; }
.strength_list li { width: 100%; position: relative; }
.strength_list li:nth-child(n+2) { margin-top: 70px; }
.strength_list li:nth-of-type(1)::after { position: absolute; left: 0; right: 0; font-size: 40px; content: "+"; display: block; bottom: -60px; margin: auto; text-align: center; }
.strength_list li:nth-of-type(2)::after { position: absolute; left: 0; right: 0; font-size: 40px; content: "＝"; display: block; bottom: -60px; margin: auto; text-align: center; }
.strength_list li:nth-child(3n+3) { margin-right: 0px; }
.strength_list_icon { width: 150px; margin: 0 auto 30px; }
.strength_list_icon img { width: 100%; height: auto; }
.strength_list_tit { text-align: center; font-weight: 500; font-size: 1.6rem; }
.strength_list_tit span { text-align: left!important; font-size: 1.4rem; display: block; margin-top: 5px; }
.strength_list_txt { text-align: left; margin-top: 50px; }



/*--idx03Box---------------*/
.idx03Box {

}

.idx03Box h4.idxTit_en,
.idx03Box h5.idxTit_jp {
/*text-align: center;*/
}

.idx03Box_list {
margin-bottom: 50px;
}

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

.idx03Box_list li {
-ms-flex-preferred-size: 48%;
flex-basis: 48%;
max-width: 48%;
margin-right: 4%;
-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;
}

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

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

.idx03Box_h4 {
padding-top: 10px;
text-align: left;
font-size: 1.6rem;
font-weight: 400;
line-height: 30px;
background: #fff;
padding-left: 25px;
}
.idx03Box_h4 span {
position: relative;
}
.idx03Box_h4 span::before {
position: absolute;
top: 0;
bottom: 0;
left: -25px;
display: block;
width: 20px;
height: 2px;
margin: auto;
content: '';
background-color: #028ce4;
}

.idx03Box_h5 {
display: none;
}

.idx03Box_list li:hover .idx03Box_h4 {
color: #028ce4;
}

figure.snip1194 {
color: #fff;
position: relative;
overflow: hidden;
/*  margin: 10px;
min-width: 220px;
max-width: 310px;
max-height: 220px;*/
width: 100%;
background: #e7f6ff;
color: #000000;
text-align: center;
}
figure.snip1194 * {
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-transition: all 0.6s ease;
transition: all 0.6s ease;
}
figure.snip1194 img {
opacity: 1;
width: 100%;
-webkit-transition: opacity 0.35s;
transition: opacity 0.35s;
}
figure.snip1194 figcaption {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: calc(100% - 30px);;
}
figure.snip1194 h2,
figure.snip1194 p {
margin: 0;
position: absolute;
width: 100%;
left: 0;
opacity: 0;
}
figure.snip1194 h2 {
padding: 0 10px;
margin-bottom: 10px;
display: inline-block;
text-transform: uppercase;
font-weight: 400;
color: #028ce4;
font-style: italic;
bottom: 50%;
-webkit-transform: translate3d(0%, -100%, 0);
transform: translate3d(0%, -100%, 0);
}
figure.snip1194 h2 span {
font-weight: 400;
}
figure.snip1194 p {
top: 50%;
padding: 0 5px;
font-size: 0rem;
font-weight: 400;
-webkit-transform: translate3d(0%, 100%, 0);
transform: translate3d(0%, 100%, 0);
}
figure.snip1194 a {
left: 0;
right: 0;
top: 0;
bottom: 0;
position: absolute;
}
figure.snip1194:hover img,
figure.snip1194.hover img {
opacity: 0.2;
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
figure.snip1194:hover figcaption h2,
figure.snip1194.hover figcaption h2,
figure.snip1194:hover figcaption p,
figure.snip1194.hover figcaption p {
-webkit-transform: translate3d(0%, 0%, 0);
transform: translate3d(0%, 0%, 0);
}
figure.snip1194:hover figcaption h2,
figure.snip1194.hover figcaption h2 {
opacity: 0.9;
}
figure.snip1194:hover figcaption p,
figure.snip1194.hover figcaption p {
opacity: 0.9;
}

/*--idx05Box---------------*/
.idx05Box {

}

.idx05Box h4.idxTit_en,
.idx05Box h5.idxTit_jp {
text-align: center;
}

.idx05_list {
width: 100%;
margin: auto;
}
.idx05_list ul {
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.idx05_list ul.idx05_list-t {
width: 100%;
margin: 0 auto 10px;
}
.idx05_list ul.idx05_list-t li {
-ms-flex-preferred-size: 18%;
flex-basis: 48%;
max-width: 48%;
margin-right: 4%;
}
.idx05_list ul.idx05_list-t li:nth-child(2n) {
margin-right: 0%;
}
.idx05_list ul.idx05_list-t li:nth-child(n+3) {
margin-top: 10px;
}
.idx05_list ul.idx05_list-b li {
-ms-flex-preferred-size: 18%;
flex-basis: 48%;
max-width: 48%;
margin-right: 4%;
}
.idx05_list ul.idx05_list-b li:nth-child(2n) {
margin-right: 0%;
}
.idx05_list ul.idx05_list-b li:nth-child(n+3) {
margin-top: 10px;
}



}
