@charset "UTF-8";
@media screen and (min-width: 768px),print {
main {background: #F9F5E9; width: 100%!important; max-width: 1920px!important; margin: 0 auto!important;}

#main-bx{}
#main-bx .bx{width: 1280px; margin: -90px auto 0; background: url(../images/company/main-bg.png) no-repeat top 78px right; padding: 120px 0 113px;}
#main-bx .bx .inner{width: 900px; margin: 0 auto;}
#main-bx .bx .inner .ttl1{font-size: 60px; letter-spacing: 0.3px; line-height: 1.45; text-align: center; font-weight: bold; color: #181C62; margin-bottom: 35px; padding-left: 25px;}
#main-bx .bx .inner .txt1{font-size: 15px; letter-spacing: 0.3px; line-height: 1.6; text-align: center; font-weight: 500; margin-bottom: 82px;}
#main-bx .bx .inner .list{display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center;}
#main-bx .bx .inner .list li{width: 200px; margin-right: 30px;}
#main-bx .bx .inner .list li:last-child{margin-right: 0;}

#main-bx .main-last-bigimg {width: 100%; margin: 0 auto; border-top: 2px solid #171C61;  border-bottom: 2px solid #171C61;}

#main-bx .loop {
width: 100%;
height: 79px; /*画像の高さ等*/
background: url(../images/company/main-big-img.png) repeat-x #EFE8D8;
background-position: center;
animation: bgloop 30s linear infinite; /*秒数等はお好きな数値に、infiniteは残す*/
}

@keyframes bgloop {
from { background-position: 0 0; }
to { background-position: -2079px 0; /*-1000px部分は画像の横幅と同じ数値*/ }
}



#con1{background: #EFE8D8; padding-bottom: 63px;}
#con1 .bx{width: 1100px; margin: 0 auto; }
#con1 .bx .inner{}

#con1 .bx .inner .in-bx1{width: 1100px; margin: 0 auto; position: relative; padding: 110px 0 58px;}
#con1 .bx .inner .in-bx1 .in-inner1{width: 450px; margin-right: auto;}
#con1 .bx .inner .in-bx1 .in-inner1 .img1{position: absolute; right: 0; top: 70px;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl1{font-size: 20px; letter-spacing: 0.3px; line-height: 1.45; font-weight: 500; color: #181C62; margin-bottom: 0px; }
#con1 .bx .inner .in-bx1 .in-inner1 .ttl2{font-size: 36px; letter-spacing: 0px; line-height: 1.45; font-weight: bold; color: #181C62; margin-bottom: 65px; }
#con1 .bx .inner .in-bx1 .in-inner1 .ttl2 span{font-size: 60px; position: relative;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl2 span::before{content: ""; width: 77px; height: 19px; margin: 0 auto; background: url(../images/company/con1-ttl-icon1.png) no-repeat top center; position: absolute; left: 0; right: 0; top: -10px;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl3{font-size: 20px; letter-spacing: 0.3px; line-height: 1.45; font-weight: 500; color: #181C62; margin-bottom: 25px;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl4{font-size: 36px; letter-spacing: 0px; line-height: 0.95; font-weight: bold; color: #181C62; margin-bottom: 35px;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl4 span{font-size: 60px; position: relative;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl4 span::before{content: ""; width: 77px; height: 19px; margin: 0 auto; background: url(../images/company/con1-ttl-icon1.png) no-repeat top center; position: absolute; left: 0; right: 0; top: -10px;}

#con1 .bx .inner .in-bx2{width: 1100px; margin: 0 auto 20px; background: #181C62; position: relative; padding: 32px 0 34px;}
#con1 .bx .inner .in-bx2 .in-inner1{width: 536px; margin-left: auto; margin-right: 180px;}
#con1 .bx .inner .in-bx2 .in-inner1 .in-ttl1{position: absolute; left: -30px; top: 33px;}
#con1 .bx .inner .in-bx2 .in-inner1 .list{}
#con1 .bx .inner .in-bx2 .in-inner1 .list li{font-size: 18px; letter-spacing: 0px; line-height: 1.7; font-weight: bold; color: #fff; padding-left: 50px; background: url(../images/company/con1-ttl-icon2.png) no-repeat top 6px left 16px; margin-bottom: 15px;}
#con1 .bx .inner .in-bx2 .in-inner1 .list li:last-child{margin-bottom: 0;}

#con1 .bx .inner .in-bx3{width: 1100px; margin: 0 auto 20px; background: #181C62; position: relative; padding: 32px 0 34px;}
#con1 .bx .inner .in-bx3 .in-inner1{width: 626px; margin-left: auto; margin-right: 90px;}
#con1 .bx .inner .in-bx3 .in-inner1 .in-ttl1{position: absolute; left: -30px; top: 33px;}
#con1 .bx .inner .in-bx3 .in-inner1 .list{}
#con1 .bx .inner .in-bx3 .in-inner1 .list li{font-size: 18px; letter-spacing: 0px; line-height: 1.7; font-weight: bold; color: #fff; padding-left: 50px; background: url(../images/company/con1-ttl-icon2.png) no-repeat top 6px left 16px; margin-bottom: 15px;}
#con1 .bx .inner .in-bx3 .in-inner1 .list li:last-child{margin-bottom: 0;}


#con2{}
#con2 .bx{width: 1100px; margin: 0 auto; position: relative; padding: 90px 0 100px;}
#con2 .bx .inner{}
#con2 .bx .inner .ttl1{text-align: center; margin-bottom: 40px;}
#con2 .bx .inner .icon{position: absolute; right: 313px; top: 78px; z-index: 1;}

#con2 .bx .inner .in-bx1{width: 1100px; margin: 0 auto; position: relative; background: #fff; padding: 43px 149px 60px;}
#con2 .bx .inner .in-bx1 .in-inner1{}
#con2 .bx .inner .in-bx1 .in-inner1 table{width: 100%; margin: 0 auto; border-collapse: collapse;}
#con2 .bx .inner .in-bx1 .in-inner1 tbody{}
#con2 .bx .inner .in-bx1 .in-inner1 tr{border-bottom: 1px solid #454774;}
#con2 .bx .inner .in-bx1 .in-inner1 th{width: 30%; font-size: 16px; letter-spacing: 0px; line-height: 2.23; text-align: left; font-weight: bold; padding: 13px 0 13px 40px; vertical-align: top; display: inline-block;}
#con2 .bx .inner .in-bx1 .in-inner1 td{width: 70%; font-size: 16px; letter-spacing: 0px; line-height: 2.23; text-align: left; font-weight: 500; padding: 13px 0 13px 40px; vertical-align: top; display: inline-block;}
#con2 .bx .inner .in-bx1 .in-inner1 tr:last-child td{line-height: 1.7;}


#con3{}
#con3 .bx{width: 100%; margin: 0 auto; padding: 50px 0 164px; background: #fff; border-top: 2px solid #171C61; border-bottom: 2px solid #171C61;}
#con3 .bx .inner{width: 1200px; margin: 0 auto; position: relative;}
#con3 .bx .inner .ttl1{text-align: center; margin-bottom: 112px;}

#con3 .bx .inner .in-bx1{width: 1200px; margin: 0 auto; position: relative; }
#con3 .bx .inner .in-bx1 .in-inner1{width: 362px; margin-left: auto;}
#con3 .bx .inner .in-bx1 .in-inner1 .icon{position: absolute; right: 48px; top: -135px;}
#con3 .bx .inner .in-bx1 .in-inner1 .ttl2{font-size: 34px; letter-spacing: 1px; line-height: 0.8; font-weight: bold; color: #181C62; margin-bottom: 33px;}
/* No.103 欧文は同じpxでも小さく見えるため拡大（実インク高さ 株式会社比 70.6%→89.7%）*/
#con3 .bx .inner .in-bx1 .in-inner1 .ttl2 .name-en{font-size: 1.25em;}
#con3 .bx .inner .in-bx1 .in-inner1 .img{margin: 0 auto 16px;}
#con3 .bx .inner .in-bx1 .in-inner1 .map{width: 780px; height: 520px; margin: 0 auto; position: absolute; left: 0; top: -75px;}
#con3 .bx .inner .in-bx1 .in-inner1 .map iframe{width: 780px; height: 520px; margin: 0 auto; }
#con3 .bx .inner .in-bx1 .in-inner1 .txt{font-size: 15px; letter-spacing: 0.6px; line-height: 1.65; font-weight: 500;}


#con4{}
#con4 .bx{width: 100%; margin: 0 auto -102px; padding: 80px 0 232px;}
#con4 .bx .inner{width: 1200px; margin: 0 auto; position: relative;}
#con4 .bx .inner .ttl1{text-align: center; margin-bottom: 30px;}

#con4 .bx .inner .in-bx1{width: 1100px; margin: 0 auto; }
#con4 .bx .inner .in-bx1 .in-inner1{}

#con4 .bx .inner .in-bx1 .in-inner1 .list1{margin-bottom: 35px; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center;}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li{width: 340px; margin-right: 40px; margin-bottom: 40px;}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li:nth-of-type(2){margin-top: 10px;}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li:nth-of-type(3){margin-top: 10px;}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li:nth-of-type(3n){margin-right: 0}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li:nth-of-type(n+4){margin-bottom: 0;}

#con4 .bx .inner .in-bx1 .in-inner1 .list2{margin-bottom: 43px; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center;}
#con4 .bx .inner .in-bx1 .in-inner1 .list2 li{width: 340px; margin-right: 40px; }
#con4 .bx .inner .in-bx1 .in-inner1 .list2 li:last-child{margin-right: 0; }

#con4 .bx .inner .in-bx1 .in-inner1 .list3{margin-bottom: 40px; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center;}
#con4 .bx .inner .in-bx1 .in-inner1 .list3 li{width: 340px; margin-right: 40px; }
#con4 .bx .inner .in-bx1 .in-inner1 .list3 li:last-child{margin-right: 0; }

#con4 .bx .inner .in-bx1 .in-inner1 .list4{display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center;}
#con4 .bx .inner .in-bx1 .in-inner1 .list4 li{width: 245px; margin-right: 40px; }
#con4 .bx .inner .in-bx1 .in-inner1 .list4 li:last-child{margin-right: 0; }




}






@media screen and (max-width: 767px) {
.seo_bread_list {display: none;}
main {background: #F9F5E9; }

#main-bx{}
#main-bx .bx{width: 90%; margin: 0 auto; background: url(../images/company/sp-main-bg.png) no-repeat top 40vw center; padding: 15vw 0 5vw; background-size: 100%;}
#main-bx .bx .inner{width: 100%; margin: 0 auto;}
#main-bx .bx .inner .ttl1{font-size: 6.6vw; letter-spacing: 0.2vw; line-height: 1.45; text-align: center; font-weight: bold; color: #181C62; margin-bottom: 64vw; padding-left: 4vw;}
#main-bx .bx .inner .txt1{font-size: 3.6vw; letter-spacing: 0.1vw; line-height: 2; text-align: center; font-weight: 500; margin-bottom: 7vw;}
#main-bx .bx .inner .list{display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center;}
#main-bx .bx .inner .list li{width: 38vw; margin-right: 3vw; margin-bottom: 5vw;}
#main-bx .bx .inner .list li:nth-child(2n){margin-right: 0;}

#main-bx .main-last-bigimg {width: 100%; margin: 0 auto; border-top: 2px solid #171C61;  border-bottom: 2px solid #171C61;}

#main-bx .loop {
width: 100%;
height: 14vw;
background: url(../images/company/sp-main-big-img.png) repeat-x center center #EFE8D8;
background-size: 200vw;
animation: bgloop 30s linear infinite;
}

@keyframes bgloop {
from { background-position: 0 center; }
to { background-position: -200vw center; }
}



#con1{background: #EFE8D8; padding-bottom: 12vw;}
#con1 .bx{width: 100%; margin: 0 auto; }
#con1 .bx .inner{}

#con1 .bx .inner .in-bx1{width: 100%; margin: 0 auto; position: relative; padding: 7vw 0 10vw;}
#con1 .bx .inner .in-bx1 .in-inner1{width: 90%; margin: 0 auto;}
#con1 .bx .inner .in-bx1 .in-inner1 .img1{width: 100%; margin: 0 auto 2vw;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl1{font-size: 4.4vw; letter-spacing: 0vw; line-height: 3.55; font-weight: 500; color: #181C62; }
#con1 .bx .inner .in-bx1 .in-inner1 .ttl2{font-size: 6.4vw; letter-spacing: 0vw; line-height: 1.25; font-weight: bold; color: #181C62; margin-bottom: 3vw;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl2 span{font-size: 10vw; position: relative;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl2 span::before{content: ""; width: 15vw; height: 5vw; margin: 0 auto; background: url(../images/company/sp-con1-ttl-icon1.png) no-repeat top center; position: absolute; left: 0; right: 1vw; top: -2vw; background-size: 90%;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl3{font-size: 4.4vw; letter-spacing: 0vw; line-height: 3.55; font-weight: 500; color: #181C62; }
#con1 .bx .inner .in-bx1 .in-inner1 .ttl4{font-size: 6.4vw; letter-spacing: 0vw; line-height: 1.05; font-weight: bold; color: #181C62; margin-bottom: 8vw;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl4 span{font-size: 10vw; position: relative;}
#con1 .bx .inner .in-bx1 .in-inner1 .ttl4 span::before{content: ""; width: 15vw; height: 5vw; margin: 0 auto; background: url(../images/company/sp-con1-ttl-icon1.png) no-repeat top center; position: absolute; left: 0; right: 1vw; top: -2vw; background-size: 90%;}

#con1 .bx .inner .in-bx2{width: 90%; margin: 0 auto 17vw; background: #181C62; position: relative; padding: 5vw 0 7vw;}
#con1 .bx .inner .in-bx2 .in-inner1{width: 100%; margin: 0 auto;}
#con1 .bx .inner .in-bx2 .in-inner1 .in-ttl1{width: 98%; margin: -17vw auto 5vw; padding-right: 9vw; padding-left: 2vw;}
#con1 .bx .inner .in-bx2 .in-inner1 .list{}
#con1 .bx .inner .in-bx2 .in-inner1 .list li{font-size: 3.5vw; letter-spacing: 0.1vw; line-height: 1.7; font-weight: bold; color: #fff; padding-left: 12vw; background: url(../images/company/sp-con1-ttl-icon2.png) no-repeat top 0vw left 5vw; margin-bottom: 5vw; background-size: 5vw;}
#con1 .bx .inner .in-bx2 .in-inner1 .list li:last-child{margin-bottom: 0;}

#con1 .bx .inner .in-bx3{width: 90%; margin: 0 auto; background: #181C62; position: relative; padding: 5vw 0 7vw;}
#con1 .bx .inner .in-bx3 .in-inner1{width: 100%; margin: 0 auto;}
#con1 .bx .inner .in-bx3 .in-inner1 .in-ttl1{width: 98%; margin: -17vw auto 5vw; padding-right: 9vw; padding-left: 2vw;}
#con1 .bx .inner .in-bx3 .in-inner1 .list{}
#con1 .bx .inner .in-bx3 .in-inner1 .list li{font-size: 3.5vw; letter-spacing: 0.1vw; line-height: 1.65; font-weight: bold; color: #fff; padding-left: 12vw; background: url(../images/company/sp-con1-ttl-icon2.png) no-repeat top 0vw left 5vw; margin-bottom: 4vw; background-size: 5vw;}
#con1 .bx .inner .in-bx3 .in-inner1 .list li:last-child{margin-bottom: 0;}


#con2{}
#con2 .bx{width: 100%; margin: 0 auto; position: relative; padding: 15vw 0 19vw;}
#con2 .bx .inner{}
#con2 .bx .inner .ttl1{width: 36%; margin: 0 auto 8vw;}
/* #con2 .bx .inner .icon{} */

#con2 .bx .inner .in-bx1{width: 100%; margin: 0 auto; position: relative; background: #fff; padding: 3vw 5vw 7vw;}
#con2 .bx .inner .in-bx1 .in-inner1{}
#con2 .bx .inner .in-bx1 .in-inner1 table{width: 100%; margin: 0 auto; border-collapse: collapse;}
#con2 .bx .inner .in-bx1 .in-inner1 tbody{}
#con2 .bx .inner .in-bx1 .in-inner1 tr{border-bottom: 1px solid #454774;}
#con2 .bx .inner .in-bx1 .in-inner1 th{width: 32%; font-size: 3.8vw; letter-spacing: 0vw; line-height: 1.73; text-align: left; font-weight: bold; vertical-align: top; padding: 4vw 0 4vw 5vw; display: inline-block;}
#con2 .bx .inner .in-bx1 .in-inner1 td{width: 68%; font-size: 3.8vw; letter-spacing: 0vw; line-height: 1.73; text-align: left; font-weight: bold; vertical-align: top; padding: 4vw 0 4vw 5vw; display: inline-block;}
#con2 .bx .inner .in-bx1 .in-inner1 tr:last-child td{line-height: 1.6;}


#con3{}
#con3 .bx{width: 100%; margin: 0 auto; padding: 12vw 0 11vw; background: #fff; border-top: 2px solid #171C61; border-bottom: 2px solid #171C61;}
#con3 .bx .inner{width: 100%; margin: 0 auto; position: relative;}
#con3 .bx .inner .ttl1{width: 26%; margin: 0 auto 10vw;}

#con3 .bx .inner .in-bx1{width: 80%; margin: 0 auto; position: relative; }
#con3 .bx .inner .in-bx1 .in-inner1{width: 100%; margin: 0 auto;}
#con3 .bx .inner .in-bx1 .in-inner1 .icon{width: 26vw; position: absolute; right: -5vw; top: -49vw;}
#con3 .bx .inner .in-bx1 .in-inner1 .ttl2{font-size: 7vw; letter-spacing: 0.1vw; line-height: 0.8; font-weight: bold; color: #181C62; margin-bottom: 6vw;}
/* No.103 欧文は同じpxでも小さく見えるため拡大 */
#con3 .bx .inner .in-bx1 .in-inner1 .ttl2 .name-en{font-size: 1.25em;}
#con3 .bx .inner .in-bx1 .in-inner1 .img{width: 100%; margin: 0 auto 5vw;}
#con3 .bx .inner .in-bx1 .in-inner1 .map{width: 100%; height: 54vw; margin: 0 auto 3vw; }
#con3 .bx .inner .in-bx1 .in-inner1 .map iframe{width: 100%; height: 54vw; margin: 0 auto; }
#con3 .bx .inner .in-bx1 .in-inner1 .txt{font-size: 3.8vw; letter-spacing: 0; line-height: 1.75; font-weight: 500;}


#con4{}
#con4 .bx{width: 100%; margin: 0 auto -23vw; padding: 14vw 0 37vw;}
#con4 .bx .inner{width: 100%; margin: 0 auto; position: relative;}
#con4 .bx .inner .ttl1{width: 32%; margin: 0 auto 5vw;}

#con4 .bx .inner .in-bx1{width: 82%; margin: 0 auto; }
#con4 .bx .inner .in-bx1 .in-inner1{}

#con4 .bx .inner .in-bx1 .in-inner1 .list1{margin-bottom: 5vw; }
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li{width: 100%; margin: 0 auto 5vw;}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li:nth-of-type(2){margin-top: 1vw;}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li:nth-of-type(3){margin-top: 1vw; margin-bottom: 4vw;}
#con4 .bx .inner .in-bx1 .in-inner1 .list1 li:last-child{ margin-bottom: 0vw;}

#con4 .bx .inner .in-bx1 .in-inner1 .list2{margin-bottom: 4vw; }
#con4 .bx .inner .in-bx1 .in-inner1 .list2 li{width: 100%; margin: 0 auto 5vw;}
#con4 .bx .inner .in-bx1 .in-inner1 .list2 li:last-child{margin-bottom: 0; }

#con4 .bx .inner .in-bx1 .in-inner1 .list3{margin-bottom: 5vw; }
#con4 .bx .inner .in-bx1 .in-inner1 .list3 li{width: 100%; margin: 0 auto 5vw;}
#con4 .bx .inner .in-bx1 .in-inner1 .list3 li:last-child{margin-bottom: 0; }

#con4 .bx .inner .in-bx1 .in-inner1 .list4{margin-bottom: 5vw; }
#con4 .bx .inner .in-bx1 .in-inner1 .list4 li{width: 100%; margin: 0 auto 5vw;}
#con4 .bx .inner .in-bx1 .in-inner1 .list4 li:last-child{margin-bottom: 0; }



}