@charset "UTF-8";
@import url("style.css");
@media screen and (min-width: 769px) { /*  common  */
  /* imglink用 */
  /* 共通CSS */
  body, #header, #footer, #index, #company, #message, #facility, #products, #sessaku, #yosha, #advantage, #contact { width: 100%; min-width: 1080px; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; }
  a { text-decoration: none; transition: 0.5s; }
  a:hover { transition: 0.5s; }
  .dotto { background: url(../images/common/dotto.png) !important; background-repeat: repeat; height: 100%; }
  .dotto2 { background: url(../images/common/dotto2.png) !important; background-repeat: repeat; height: 100%; }
  .dotto3 { background: url(../images/common/dotto3.png) !important; background-repeat: repeat; height: 100%; }
  .redti { font-family: "source-han-sans-japanese"; font-weight: 900; letter-spacing: 2px; color: #850100; }
  .redti p { font-size: 30px; }
  .redti .big { font-size: 37px; }
  ul { list-style: none; }
  /* nav スクロール */
  #header { position: fixed; background: #FFF; transition: 0.2s; }
  #header #nav { position: relative; }
  #header.fixed { margin: -110px 0 0 0; transition: 0.2s; z-index: 100; }
  /*  sp非表示用  */
  #header .sp-nav { display: none; }
  /* 下層コンテンツ */
  #contents .blackbox { height: 181px; background: #000; }
  #contents h2 { font-size: 30px; font-weight: 900; font-family: "source-han-sans-japanese"; color: #000; text-decoration: none; letter-spacing: 1px; padding: 80px 0 0 0; text-align: center; }
  #contents .line { width: 129px; margin: 20px auto 0; border-bottom: 1px solid #b60201; }
  /* pagetop */
  #pagetop { position: relative; width: 1080px; margin: 0 auto; }
  #pagetop .pagetop { position: absolute; opacity: 0; filter: alpha(opacity=0); -webkit-transform: scale(1.5); -moz-transform: scale(1.5); -ms-transform: scale(1.5); -o-transform: scale(1.5); transform: scale(1.5); -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s; }
  #pagetop .pagetop img { vertical-align: middle; margin: 15px 0 0 0; }
  #pagetop .pagetop a { display: block; width: 66px; height: 66px; background-color: #000; border-radius: 5px; text-align: center; }
  #pagetop .show { opacity: 1; filter: alpha(opacity=100); -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1); }
  #pagetop .box { position: fixed; bottom: 188px; right: 100px; }
  /* contact error */
  #contact .red { font-size: 14px; text-align: left; line-height: 1.8em; color: #a20100; }
  #contact .red::before { content: '\f06a'; font-family: "FontAwesome"; }
  /*  header  */
  #header .line { height: 5px; background: #00385f; }
  #header .A { width: 1080px; margin: 0 auto; }
  #header .A .lbox { float: left; margin: 7px 0 0 0; }
  #header .A .lbox p { font-size: 14px; text-align: left; line-height: 1.8em; color: #2d2d2d; line-height: 1.4; }
  #header .A .lbox img { margin: 7px 0 0 0; }
  #header .A ul { float: right; margin: 30px 0 0 0; }
  #header .A ul li { vertical-align: middle; display: inline-block; }
  #header .A ul li p { font-family: "source-han-sans-japanese"; letter-spacing: 0.3px; }
  #header .A ul li img { padding: 7px 0 0 0; }
  #header .A ul li a { width: 266px; padding: 15px 19px; background: #850100; border-radius: 5px; font-size: 18px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; font-weight: 400; }
  #header .A ul li a span { text-align: center; }
  #header .A ul li a:hover { width: 266px; padding: 15px 19px; background: #a20100; border-radius: 5px; transition: 0.5s; }
  #header .A ul li:last-child { width: 266px; margin: 2px 0 0 21px; }
  #header .B { height: 70px; margin: 105px 0 0 0; text-align: center; background: #00385f; border-bottom: 1px solid #052a44; }
  #header .B nav { width: 1080px; margin: 0 auto; overflow: hidden; }
  #header .B ul { font-size: 0; padding: 20px 0; }
  #header .B ul li { height: 30px; display: inline-block; border-left: 1px solid #235275; }
  #header .B ul li a { display: inline-block; padding: 20px 0; margin: -20px; }
  #header .B ul li a span { font-size: 14px; font-weight: 400; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; display: block; text-align: center; line-height: 1.4; }
  #header .B ul li a .Eng { font-family: "futura-pt"; font-size: 10px; color: #78a3c0; }
  #header .B ul li a:hover { height: 30px; display: inline-block; border: none; background: #014e84; }
  #header .B ul li #current { height: 30px; display: inline-block; padding: 20px 0; border: none; background: #014e84; }
  #header .B ul li:nth-child(1) { width: 99px; }
  #header .B ul li:nth-child(1) a { width: 99px; }
  #header .B ul li:nth-child(1) #current { width: 99px; }
  #header .B ul li:nth-child(2) { width: 117px; }
  #header .B ul li:nth-child(2) a { width: 117px; }
  #header .B ul li:nth-child(2) #current { width: 117px; }
  #header .B ul li:nth-child(3) { width: 108px; }
  #header .B ul li:nth-child(3) a { width: 108px; }
  #header .B ul li:nth-child(3) #current { width: 108px; }
  #header .B ul li:nth-child(4) { width: 116px; }
  #header .B ul li:nth-child(4) a { width: 116px; }
  #header .B ul li:nth-child(4) #current { width: 116px; }
  #header .B ul li:nth-child(5) { width: 172px; }
  #header .B ul li:nth-child(5) a { width: 172px; }
  #header .B ul li:nth-child(5) #current { width: 172px; }
  #header .B ul li:nth-child(6) { width: 141px; }
  #header .B ul li:nth-child(6) a { width: 141px; }
  #header .B ul li:nth-child(6) #current { width: 141px; }
  #header .B ul li:nth-child(7) { width: 192px; }
  #header .B ul li:nth-child(7) a { width: 192px; }
  #header .B ul li:nth-child(7) #current { width: 192px; }
  #header .B ul li:nth-child(8) { width: 125px; }
  #header .B ul li:nth-child(8) a { width: 125px; }
  #header .B ul li:nth-child(8) #current { width: 125px; }
  #header .B ul li:last-child { border-right: 1px solid #235275; }
  /* footer */
  #footer { background: #00253f; }
  #footer .A { width: 1080px; margin: 0 auto; padding: 40px 0 56px 0; color: #FFF;}
  #footer .A .lbox { float: left; }
  #footer .A .lbox p { font-size: 14px; text-align: left; line-height: 1.8em; color: #FFF; margin: 10px 0 0 0; }
  #footer .A .lbox p span { display: block; }
  #footer .A .lbox nav { font-size: 14px; text-align: left; line-height: 1.8em; color: #FFF; margin: 21px 0 0 55px; }
  #footer .A .lbox nav table { border-collapse: collapse; border-spacing: 0; }
  #footer .A .lbox nav table tr { line-height: 2.1; }
  #footer .A .lbox nav table tr td { width: 130px; }
  #footer .A .lbox nav table a { font-size: 14px; text-align: left; line-height: 1.8em; color: #FFF; }
  #footer .A .lbox nav table a::before { padding: 0 8px 0 0; font-family: "FontAwesome"; content: "\f105"; }
  #footer .A .lbox nav table a:hover { color: #84a2aa; }
  #footer .A .lbox li { width: 295px; vertical-align: middle; display: block; }
  #footer .A .lbox li .btn { padding: 15px 37px; background: #FFF; border-radius: 5px; font-size: 18px; font-weight: 400; font-family: "source-han-sans-japanese"; color: #002b48; text-decoration: none; letter-spacing: 1px; }
  #footer .A .lbox li .btn:hover { padding: 15px 37px; background: #b7d6eb; border-radius: 5px; }
  #footer .A .lbox li:last-child { margin: 30px 0 0 0; }
  #footer .A ul { margin: 0 0 0 41px; }
  #footer .B { background: #000; }
  #footer .B .copy { width: 1080px; margin: 0 auto; font-size: 14px; text-align: left; line-height: 1.8em; color: #597284; height: 50px; }
  #footer .B .copy p { padding: 16px 0 0; }
  /* index */
  #index .tx { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; }
  #index .tx span { display: block; }
  #index .A { height: 651px; background-size: cover; background-repeat: no-repeat; background-position: center; background-position: top; background-image: url(../images/index/mainimg_base.jpg);  position:relative;}
  #index .A h1 { width: 618px; padding-top: 197px; margin: 0 auto; }
  #index .B { width: 1080px; margin: 0 auto; padding: 0 0 95px 0; }
  #index .B .tx { margin: 40px 0 0 0; }
  #index .B .redti { margin: 80px 0 0 0; text-align: center; }
  #index .B ul { width: 655px; margin: 60px auto 0; }
  #index .B ul li { display: inline-block; margin: 0 57px 0 0; }
  #index .B ul li .btn { padding: 15px 78px; background: #00385f; border-radius: 5px; font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; }
  #index .B ul li .btn:hover { padding: 15px 78px; background: #014e84; border-radius: 5px; }
  #index .B ul li:last-child { margin: 0; }
  #index .C { background-image: url(../images/index/img01.jpg); height: 296px; background-size: cover; background-repeat: no-repeat; background-position: center; }
  #index .D .tx { margin: 35px 0 0 0; padding: 0 0 186px 0; }
  #index .E { width: 1080px; margin: 0 auto; margin: -138px auto auto auto; }
  #index .E li { display: inline-block; margin: 0 39px 0 0; }
  #index .E li:last-child { margin: 0; }
  #index .E li a figure { width: 515px; border-radius: 5px; position: relative; overflow: hidden; }
  #index .E li a figure figcaption { width: 99.5%; height: 21.5%; position: absolute; top: 248px; left: 3px; z-index: 2; border-radius: 0 0 5px 5px; background: rgba(3, 47, 81, 0.9); transition: .3s; }
  #index .E li a figure figcaption .tx { font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; margin: 20px 0 0 0; text-align: center; transition: .3s; }
  #index .E li a figure figcaption .tx .fa { padding: 0 0 0 20px; }
  #index .E li a figure:hover figcaption { top: 227px; height: 28%; }
  #index .E li a figure:hover figcaption .tx { margin: 31px 0 0 0; transition: .3s; }
  #index .F { height: 280px; margin: -200px 0 0 0; background: #b7d6eb; }
  #index .G { background-image: url(../images/index/img04.jpg); height: 400px; background-size: cover; background-repeat: no-repeat; background-position: center; }
  #index .G .box { width: 1080px; margin: 0 auto; text-align: center; }
  #index .G .box h2 { color: #FFF; }
  #index .G .box .tx { font-size: 16px; text-align: center; line-height: 1.8em; color: #FFF; margin: 40px 0 55px 0; }
  #index .G .box .btn { padding: 15px 92px; background: #FFF; border-radius: 5px; font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #00385f; text-decoration: none; letter-spacing: 1px; }
  #index .G .box .btn:hover { padding: 15px 92px; background: #b7d6eb; border-radius: 5px; }
  #index .H { height: 400px; background: #00385f; }
  #index .H .box { width: 1080px; margin: 0 auto; }
  #index .H .lbox { float: left; text-align: center; }
  #index .H .lbox h2 { color: #FFF; }
  #index .H .lbox .tx { font-size: 16px; text-align: center; line-height: 1.8em; color: #FFF; margin: 40px 0 55px 0; }
  #index .H .lbox .btn { padding: 15px 92px; background: #FFF; border-radius: 5px; font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #00385f; text-decoration: none; letter-spacing: 1px; }
  #index .H .lbox .btn:hover { padding: 15px 92px; background: #b7d6eb; border-radius: 5px; }
  #index .H .rbox { float: right; margin: 58px 0 0 0; }
  #index .I { width: 1080px; margin: 0 auto; text-align: center; }
  #index .I .lbox { float: left; margin: -47px 0 0 -103px; }
  #index .I .rbox { float: right; }
  #index .I .rbox .redti { margin: 69px 0 0 0; }
  #index .I .rbox .tx { margin: 30px 0 50px 0; }
  #index .I .rbox .btn { padding: 15px 140px; background: #850100; border-radius: 5px; font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; }
  #index .I .rbox .btn .three { font-size: 33px; vertical-align: sub; }
  #index .I .rbox .btn:hover { padding: 15px 140px; background: #a00100; border-radius: 5px; }
  #index .J { background: url(../images/index/img06.jpg); height: 298px; background-size: cover; background-repeat: no-repeat; background-position: center; }
  #index .K { font-size: 24px; font-weight: 900; font-family: "source-han-sans-japanese"; color: #000; text-decoration: none; letter-spacing: 1px; }
  #index .K h2 { padding: 40px 0 0 0; font-size: 24px; }
  #index .K .line { margin: 15px auto 0; }
  #index .K .box { width: 860px; margin: 33px auto 60px; }
  #index .K .margin { padding: 20px 0 20px 0; background: #f1f1f1; }
  #index .K .margin table { margin: 0 0 0 50px; background: #f1f1f1; }
  #index .K .margin table tr { height: 35px; }
  #index .K .margin table tr th { font-size: 14px; text-align: left; line-height: 1.8em; color: #00385f; width: 155px; vertical-align: top; }
  #index .K .margin table tr td { font-size: 14px; text-align: left; line-height: 1.8em; color: #333333; width: 625px; font-weight: 400; vertical-align: top; }
  #index .K .margin table tr td a { color: #00385f; }
  #index .K .margin table tr td a:hover { color: #b7d6eb; border-bottom: 1px solid #b7d6eb; }
  
  .index-mv_recruit{ 
    background: #850100;
    display: inline-block;
    position: absolute;
    bottom: 4%;
    right: 10%;
    padding: 45px 70px;
    border-radius: 5px;
  }

  .index-mv_recruit:hover{ 
    background: #a20100;
  }

  .index-mv_recruit p{
    font-weight: bold;
    text-align: center;
    color: white;
  }

  .index-mv_recruit p span{
    display: inline-block;
    font-size: 32px;
    margin-bottom: 12px;
  }

  /* company */
  #company .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/company/mainimg_base.jpg); }
  #company .A h1 { width: 233px; padding-top: 130px; margin: 0 auto; }
  #company .B { width: 1080px; margin: 0 auto; }
  #company .B h2 { padding: 90px 0 0 0; }
  #company .B table { margin: 43px 0 100px 0; }
  #company .B table tr { font-size: 14px; text-align: left; line-height: 1.8em; color: #333333; height: 57px; }
  #company .B table tr td { width: 858px; font-weight: 400; vertical-align: top; padding: 16px 0; }
  #company .B table tr th { width: 161px; font-weight: 400; vertical-align: top; padding: 16px 0 0 60px; }
  #company .B table tr:nth-child(even) { background: #FFF; }
  #company .B table tr:nth-child(odd) { background: #e9e9e9; }
  #company .C { background: #dff0fc; padding: 0 0 100px 0; }
  #company .C .ggmap { width: 1080px; margin: 0 auto; position: relative; padding: 350px 0 0 0; margin: 43px auto 0; height: 0; overflow: hidden; }
  #company .C .ggmap iframe, #company .C .ggmap object, #company .C .ggmap .embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
  #company .C ul { width: 1080px; margin: 0 auto; }
  #company .C ul li { font-size: 16px; text-align: left; line-height: 1.8em; color: #333333; height: 50px; margin: 17px 0 0 0; display: inline-block; vertical-align: middle; }
  #company .C ul li span { display: block; }
  #company .C ul li:last-child { margin: 20px auto auto 18px; }
  /* message */
  #message .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/message/mainimg_base.jpg); }
  #message .A h1 { width: 171px; padding-top: 130px; margin: 0 auto; }
  #message .B { width: 1080px; margin: 0 auto; padding: 0 0 56px 0; }
  #message .B h2 { padding: 90px 0 0 0; }
  #message .B .box { width: 350px; margin: 62px auto 60px; }
  #message .B .box img { width: 350px; }
  #message .B p { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; padding: 0 0 44px 0; }
  #message .B p span { display: block; }
  #message .B .rbox { width: 244px; margin: 0 250px 0 auto; }
  #message .B .rbox img { margin: 0 0 0 22px; vertical-align: bottom; }
  /* facility */
  #facility { margin: 0 0 60px 0; }
  #facility .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/facility/mainimg_base.jpg); }
  #facility .A h1 { width: 233px; padding-top: 130px; margin: 0 auto; }
  #facility .C { padding: 0 0 56px 0; }
  #facility .B { width: 1080px; margin: 0 auto; }
  #facility .B h2 { padding: 40px 0 0 0; }
  #facility .B ul { width: 1080px; margin: 0 auto; margin: 63px auto 0; text-align: center; }
  #facility .B ul li { width: 340px; padding: 0 8px 40px; display: inline-block; vertical-align: top; }
  #facility .B ul li img { width: 340px; display: block; border-radius: 5px; }
  #facility .B ul li span { width: 340px; display: block; line-height: 1.2; word-wrap: break-word; }
  #facility .B ul li .ti { font-size: 25px; text-align: left; line-height: 1.8em; color: #000; font-weight: 600; margin: 10px 0 10px 0; }
  #facility .B ul li .tx { font-size: 16px; text-align: left; line-height: 1.8em; color: #333333; line-height: 1.4; }
  #facility .B ul li a { position: relative; display: block; overflow: hidden; height: 200px; border-radius: 5px; }
  #facility .B ul li a:hover { background: rgba(3, 47, 81, 0.9); border-radius: 5px; transition: 0.2s; }
  #facility .B ul li a:hover img { opacity: 0.5; transition: 0.5s; }
  #facility .B ul li a img { transition: 0.5s; }
  #facility .B ul li .ico { display: block; width: 30px; height: 30px; right: 14px; top: 157px; position: absolute; background: url(../images/facility/ico.jpg) no-repeat; }
  /* products */
  #products h2 { padding: 90px 0 0 0; }
  #products .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/products/mainimg_base.jpg); }
  #products .A h1 { width: 188px; padding-top: 130px; margin: 0 auto; }
  #products .B { margin: 0 0 63px 0; }
  #products .C .bg:nth-child(even) { background: #fff; }
  #products .C .bg:nth-child(odd) { background: #f1f1f1; }
  #products .C .box { width: 1080px; margin: 0 auto; padding: 45px 0 95px 0; }
  #products .C .box .lbox { width: 710px; float: left; }
  #products .C .box .lbox .ti { margin: 0 0 10px 0; line-height: 1.2; }
  #products .C .box .lbox .ti span { display: block; }
  #products .C .box .lbox .ti .tiA { font-size: 20px; text-align: left; line-height: 1.8em; color: #00385f; }
  #products .C .box .lbox .ti .tiB { font-size: 25px; text-align: left; line-height: 1.8em; color: #000; font-weight: 700; }
  #products .C .box .rbox { float: right; }
  #products .C .box .rbox a { position: relative; display: block; overflow: hidden; height: 200px; border-radius: 5px; overflow: hidden; height: auto; }
  #products .C .box .rbox a:hover { background: rgba(3, 47, 81, 0.9); border-radius: 5px; transition: 0.2s; }
  #products .C .box .rbox a:hover img { opacity: 0.5; transition: 0.5s; }
  #products .C .box .rbox a img { transition: 0.5s; }
  #products .C .box .rbox img { width: 340px; display: block; border-radius: 5px; }
  #products .C .box .rbox .ico { display: block; width: 30px; height: 30px; right: 14px; top: 157px; position: absolute; background: url(../images/facility/ico.jpg) no-repeat; right: 14px; top: auto; bottom: 14px; }
  #products .C .box .lineg { width: 710px; border-bottom: 1px solid #b5b5b5; }
  #products .C .box table { margin: 20px 0 20px 0; }
  #products .C .box tr { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; }
  #products .C .box tr th { width: 84px; padding: 10px 0 10px 2px; color: #00385f; font-weight: 400; vertical-align: top; text-align: left; }
  #products .C .box tr td { display: inline-block; width: 625px; padding: 10px 0; word-wrap: break-word; vertical-align: top; text-align: left; }
  /* sessaku */
  #sessaku .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/sessaku/mainimg_base.jpg); }
  #sessaku .A h1 { width: 604px; padding-top: 130px; margin: 0 auto; }
  #sessaku .B { width: 1080px; margin: 0 auto; }
  #sessaku .B p { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; margin: 50px 0; }
  #sessaku .B p span { display: block; }
  #sessaku .B .dl { border-top: none; }
  #sessaku .B dl { width: 708px; margin: 0 auto; border: 1px solid #00385f; background: #dff0fc; }
  #sessaku .B dl dt { width: 229px; padding: 81px 0; display: inline-block; text-align: center; vertical-align: middle; color: #00385f; }
  #sessaku .B dl dd { width: 473px; height: 88px; padding: 45px 0 45px 0; display: inline-block; vertical-align: middle; background: #FFF; }
  #sessaku .B dl dd li { width: 155px; padding: 0 0 10px 60px; display: inline-block; vertical-align: text-top; line-height: 1.4; word-break: break-all; text-align: left; }
  #sessaku .B dl dd li::before { content: '・'; color: #000; margin: 0 0 0 -17px; }
  #sessaku .B dl dd .li { width: 473px; padding: 0 0 10px 0; text-align: center; }
  #sessaku .B dl dd .li::before { content: ''; }
  #sessaku .B .box { width: 462px; margin: 65px auto 115px; }
  #sessaku .B .btn { padding: 15px 140px; background: #00385f; border-radius: 5px; font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; box-shadow: 2px 2px 0.6px #d1d1d1; }
  #sessaku .B .btn:hover { padding: 15px 140px; background: #014e84; border-radius: 5px; }
  #sessaku .C { background-image: url(../images/sessaku/img01.jpg); height: 319px; background-size: cover; background-repeat: no-repeat; background-position: center; }
  #sessaku .D { background: #dff0fc; padding: 48px 0 100px 0; }
  #sessaku .D h2 { padding: 50px 0 0 0; }
  #sessaku .D .line { margin: 20px auto 50px; }
  #sessaku .D .box { width: 1080px; margin: 0 auto; margin: -105px auto 0; padding: 0 0 55px 0; border-radius: 5px; border: 1px solid #dddddd; background: #FFF; }
  #sessaku .D .ti { font-size: 25px; text-align: center; line-height: 1.8em; color: #00385f; font-weight: 900; margin: 0 auto 20px; }
  #sessaku .D span { display: block; }
  #sessaku .D p { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; line-height: 1.8; }
  #sessaku .D .ico { padding: 6px 0; text-align: center; color: #dddddd; }
  /* yosha */
  #yosha .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/yosha/mainimg_base.jpg); }
  #yosha .A h1 { width: 362px; padding-top: 130px; margin: 0 auto; }
  #yosha .B { width: 1080px; margin: 0 auto; }
  #yosha .B p { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; margin: 50px 0 100px; }
  #yosha .B p span { display: block; }
  #yosha .B ul { margin: 0 0 40px 0; }
  #yosha .B ul li { width: 338px; height: 300px; margin: 0 12px 0 0; display: inline-block; background: #f1f1f1; border-radius: 5px; border: 5px solid #dddddd; vertical-align: middle; }
  #yosha .B ul li:last-child { margin: 0 0 0 0; }
  #yosha .B ul div { padding: 20px 20px; }
  #yosha .B ul div .ti { font-size: 25px; text-align: left; line-height: 1.8em; color: #00385f; font-weight: 900; }
  #yosha .B ul div p { font-size: 16px; text-align: left; line-height: 1.8em; color: #333333; margin: 20px 0 0 0; line-height: 1.8; }
  #yosha .B .red { font-size: 20px; text-align: center; line-height: 1.8em; color: #850100; font-weight: 700; }
  #yosha .C { background-image: url(../images/yosha/img01.jpg); height: 319px; background-size: cover; background-repeat: no-repeat; background-position: center; }
  #yosha .D { background: #dff0fc; padding: 48px 0 100px 0; }
  #yosha .D h2 { padding: 50px 0 0 0; }
  #yosha .D .line { margin: 20px auto 50px; }
  #yosha .D .box { width: 1080px; margin: 0 auto; margin: -105px auto 0; padding: 0 0 55px 0; border-radius: 5px; border: 1px solid #dddddd; background: #FFF; }
  #yosha .D .ti { font-size: 25px; text-align: center; line-height: 1.8em; color: #00385f; font-weight: 900; margin: 0 auto 20px; }
  #yosha .D span { display: block; }
  #yosha .D p { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; line-height: 1.8; }
  #yosha .D .ico { padding: 6px 0; text-align: center; color: #dddddd; }
  /* advantage */
  #advantage .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/advantage/mainimg_base.jpg); }
  #advantage .A h1 { width: 296px; padding-top: 130px; margin: 0 auto; }
  #advantage .B { width: 1080px; margin: 0 auto; padding: 0 0 50px 0; }
  #advantage .B p { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; margin: 50px 0; }
  #advantage .B p span { display: block; }
  #advantage .B .box { width: 1080px; margin: 0 auto; padding: 0 0 50px 0; }
  #advantage .B .box p { margin: 20px 0 0 0; line-height: 1.8; text-align: left; }
  #advantage .B .rtx { padding: 145px 0 0 540px; }
  #advantage .B .ltx { width: 540px; padding: 145px 0 0 0; }
  #advantage .B .ltx p { padding: 0; }
  #advantage .B dl { font-size: 25px; text-align: left; line-height: 1.8em; color: #850100; display: flex; }
  #advantage .B dl .num { margin: 0 0 0 -20px; font-size: 150px; font-family: "futura-pt"; font-style: italic; font-weight: 400; letter-spacing: -10px; }
  #advantage .B dl dd { display: inline-block; padding: 0 0 0 11px; margin: -5px 0 0 0; }
  #advantage .B dl dd span { display: inline-block; font-weight: 700; line-height: 1.8; }
  #advantage .B .no1 { background: url(../images/advantage/img01.jpg) no-repeat; background-position: top left; }
  #advantage .B .no2 { background: url(../images/advantage/img02.jpg) no-repeat; background-position: top right; }
  #advantage .B .no3 { background: url(../images/advantage/img03.jpg) no-repeat; background-position: top left; }
  /* contact */
  #contact .A { height: 324px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url(../images/contact/mainimg_base.jpg); }
  #contact .A h1 { width: 362px; padding-top: 130px; margin: 0 auto; }
  #contact .B { width: 1080px; margin: 0 auto; margin: 0 auto 100px; }
  #contact .B .line { margin: 20px auto 50px auto; }
  #contact .B p { font-size: 16px; text-align: center; line-height: 1.8em; color: #333333; line-height: 1.8; padding: 0 0 15px 0; }
  #contact .B p span { display: block; }
  #contact .B table { width: 735px; margin: 40px auto 50px; }
  #contact .B table th, #contact .B table td { padding: 7px 0; text-align: left; vertical-align: top; }
  #contact .B table .ico1, #contact .B table .ico2 { font-size: 16px; text-align: center; line-height: 1.8em; color: #FFF; width: 54px; padding: 3px 0; border-radius: 5px; }
  #contact .B table .ico1 .hi, #contact .B table .ico1 .ni, #contact .B table .ico2 .hi, #contact .B table .ico2 .ni { vertical-align: middle; font-weight: 300; }
  #contact .B table .ico1 { background: #b60201; }
  #contact .B table .ico2 { background: #dddddd; }
  #contact .B table .con { width: 163px; padding: 16px 0 0 10px; font-weight: 300; }
  #contact .B table .form, #contact .B table .form2, #contact .B table .form3 { width: 503px; height: 34px; padding: 2px 0 2px 10px; background: #FFF; border: 1px solid #dddddd; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; font-size: 16px; }
  #contact .B table .form placeholder, #contact .B table .form2 placeholder, #contact .B table .form3 placeholder { padding: 0 0 0 10px; }
  #contact .B table .form2 { width: 260px; }
  #contact .B table .form3 { height: 300px; }
  #contact .B table input[type="text"], #contact .B table input[type="email"], #contact .B table textarea, #contact .B table select { outline: none; -webkit-transition: all .3s; transition: all .3s; }
  #contact .B table input[type="text"]:focus, #contact .B table input[type="email"]:focus, #contact .B table textarea:focus, #contact .B table select:focus { box-shadow: 0 0 7px #235275; border: 1px solid #00385f; }
  #contact .B table input[type="text"]:-webkit-autofill, #contact .B table input[type="email"]:-webkit-autofill, #contact .B table textarea:-webkit-autofill, #contact .B table select:-webkit-autofill { box-shadow: 0 0 0 1000px #dff0fc inset; }
  #contact .B table .select-wrap { position: relative; }
  #contact .B table .select-wrap::before { width: 30px; height: 25px; z-index: 1; position: absolute; left: 225px; top: 11px; content: "\f0d7"; font-family: "FontAwesome"; text-align: center; vertical-align: middle; line-height: 27px; color: #7F878C; background: #f1f1f1; border-radius: 5px; pointer-events: none; }
  #contact .B table select { text-indent: 0.01px; text-overflow: ''; background: none transparent; vertical-align: middle; -webkit-appearance: button; -moz-appearance: none; appearance: button; color: #666666; }
  #contact .B table select::-ms-expand { display: none; }
  #contact .B ul { width: 400px; margin: 0 auto; }
  #contact .B input[type="submit"] { background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; padding: 15px 140px; background: #00385f; border-radius: 5px; font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; transition: 0.5s; font-family: "FontAwesome"; box-shadow: 2px 2px 0.6px #d1d1d1; }
  #contact .B input[type="submit"]:hover { padding: 15px 140px; background: #014e84; border-radius: 5px; transition: 0.5s; }
  #contact #submit td { vertical-align: middle; position: initial; }
  #contact #submit .select-wrap::before { z-index: 1; position: absolute; left: 225px; top: 11px; content: "\f0d7"; font-family: "FontAwesome"; text-align: center; vertical-align: middle; line-height: 27px; color: transparent; background: transparent; border-radius: 5px; pointer-events: none; }
  #contact #submit .submit { width: 781px; }
  #contact #submit .submit li { display: inline-block; }
  #contact #submit input[type="button"] { background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; padding: 15px 140px; background: #00385f; border-radius: 5px; font-size: 20px; font-weight: 500; font-family: "source-han-sans-japanese"; color: #FFF; text-decoration: none; letter-spacing: 1px; transition: 0.5s; font-family: "FontAwesome"; box-shadow: 2px 2px 0.6px #d1d1d1; padding: 15px 108px; margin: 0 20px 0 0; opacity: 0.8; }
  #contact #submit input[type="button"]:hover { padding: 15px 140px; background: #014e84; border-radius: 5px; transition: 0.5s; }
  #contact #submit input[type="button"]:hover { padding: 15px 108px; } }
