@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700;900&display=swap');

/* CSS Document */

body { font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", 'MS PGothic','ＭＳ Ｐゴシック', 'MS Gothic', sans-serif; font-size:13px; margin:0px; text-align:center; background-color:#FFFFFF; line-height:150%; color:#000000; min-width:960px; word-wrap:break-word; }

p, form { margin:0px; padding:0px; }
img { border:none; margin:0px; padding:0px; }
a { text-decoration:none; outline:none; color:#991d1d; }
a:hover { text-decoration:underline; }
a:hover img { filter:alpha(opacity=75); opacity:0.75; }
a, a img, input, textarea { transition:all 0.25s ease-in-out; -webkit-transition:all 0.25s ease-in-out; -moz-transition:all 0.25s ease-in-out; }
input, textarea, select { outline:none; }
h1, h2, h3, h4, ul, dl, dt, dd { margin:0px; padding:0px; font-weight:normal; list-style:none; }
.nan { transition:none; -webkit-transition:none; -moz-transition:none; }
.cf { width:100%; }

/* Header */

.header { width:960px; margin:0 auto; text-align:left; }
.header .lf { padding:15px 0px 19px 10px; }
.header h1 { font-size:18px; padding:35px 0px 0px 35px; float:left; text-align: center; font-weight: bold; }
.header .rh { padding:17px 10px 15px 0px; }
.header .rh p { color:#2a2a2a; font-size:14px; text-align:right; padding-top:5px; }
.header .rh a { pointer-events: none; }

.htxt { background-color:#1398e6; }
.hbnr { background:url(images/headbnrbg.jpg) no-repeat center top; }
.hbnr .cf { width:960px; margin:0 auto; }

/* Content */

.contact { background:url(images/contactbg.gif) repeat-x top; }
.contact .cont2 { background:url(images/contactbg2.jpg) no-repeat center top; height:326px; }
.contact.bg2 { background:#e1f1fa; }
.contact.bg2 .cont2 { background:url(images/contactbg3.jpg) no-repeat center top; height:326px; }
.contact .cont { width:960px; margin:0 auto; text-align:left; }
.contact .cont .txt { padding-top:125px; float:left; }
.contact .cont .txt p { color:#FFFFFF; }
.contact .cont .det { padding-top:78px; }
.contact .cont .det .lf { padding-left:40px; }
.contact .cont .det .rh { padding-right:40px; }
.contact .cont .det .rh div { background:url(images/contactbtn.gif) no-repeat 0px 0px; border-radius:8px; -webkit-box-shadow:0px 0px 3px rgba(0, 0, 0, 0.3); -moz-box-shadow:0px 0px 3px rgba(0, 0, 0, 0.3); box-shadow:0px 0px 3px rgba(0, 0, 0, 0.3); margin-top:3px; }
.contact .cont .det .rh div a { background:url(images/contactbtn.gif) no-repeat 0px -64px; display:block; text-indent:-9999px; width:324px; height:64px; filter:alpha(opacity=0); opacity:0; border-radius:8px; }
.contact .cont .det .rh div a:hover { filter:alpha(opacity=100); opacity:1; }
.contact .cont h2 { padding-top: 101px; }

.midvs { background:url(images/midbg.gif); padding:44px 0px 60px 0px; }
.midvs .cont { width:960px; margin:0 auto; text-align:left; }
.midvs h2 { text-align:right; padding-bottom:36px; padding-top:3px; padding-left:20px; }
.midvs .lf2 { float:left; }
.midvs .rh2 { float:right; }
.midvs .clr { clear:both; display:block; }
.midvs .cf { width:958px; border:#e4e6e9 solid 1px; border-radius:10px; background-color:#FFFFFF; -webkit-box-shadow:0px 0px 5px rgba(0, 0, 0, 0.05); -moz-box-shadow:0px 0px 5px rgba(0, 0, 0, 0.05); box-shadow:0px 0px 5px rgba(0, 0, 0, 0.05); }
.midvs .cf div { width:319px; height:474px; float:left; }
.midvs .cf div.d1, .midvs .cf div.d2, .midvs .cf div.d3 { border-bottom:#dcdee0 solid 1px; }
.midvs .cf div.d2, .midvs .cf div.d5 { width:318px; border-left:#dcdee0 solid 1px; border-right:#dcdee0 solid 1px; }
.midvs .cf div.d1 { background:url(images/ic1.gif) no-repeat center top; }
.midvs .cf div.d2 { background:url(images/ic2.gif) no-repeat center top; }
.midvs .cf div.d3 { background:url(images/ic3.gif) no-repeat center top; }
.midvs .cf div.d4 { background:url(images/ic4.gif) no-repeat center top; }
.midvs .cf div.d5 { background:url(images/ic5.gif) no-repeat center top; }
.midvs .cf div.d6 { background:url(images/ic6.gif) no-repeat center top; }
.midvs .cf div h3 { font-size:20px; font-weight:bold; text-align:center; line-height:30px; letter-spacing:-1px; padding-top:130px; }
.midvs .cf div h3 span { font-size:28px; padding:0px 3px 0px 3px; }
.midvs .cf div p { padding:20px 30px 0px 40px; font-size:16px; line-height:180%; }
.midvs .cf div p span { color:#ff0048; }

.cases { background-color:#1c8dd4; padding:35px 0px 15px 0px; }
.cases .cont { width:960px; margin:0 auto; text-align:left; }
.cases h2 { text-align:center; padding-bottom:35px; }
.cases .case { background-color:#FFFFFF; border-radius:10px; margin-bottom:35px; }
.cases .case .lf { width:560px; margin-left:30px; padding:30px 0px 30px 0px; }
.cases .case .lf .cs { height:0px; width:100%; position:relative; }
.cases .case .lf .cs img { position:absolute; top:-52px; left:12px; }
.cases .case .lf .ti { padding-bottom:3px;}
.cases .case .lf .ti .i2 { margin-left:10px; }
.cases .case .lf h3 { background:url(images/casetbg.gif) no-repeat 0px center; padding:12px 0px 8px 135px; font-size:23px; font-weight:bold; color:#054595; border-bottom:#e9f341 solid 5px; margin-top:20px; }
.cases .case .lf h3 span { font-size:26px; }
.cases .case .lf h3 span.ls { letter-spacing:-2px; }
.cases .case .lf .regs { text-align:center; padding-top:7px; }
.cases .case .lf .regs li { display:inline-block; color:#1c71d0; font-weight:bold; font-size:22px; border:#1c71d0 solid 1px; border-radius:5px; padding:12px 12px 8px 12px; margin:0px 3px 0px 3px; }
.cases .case .lf p { font-size:18px; line-height:180%; padding:20px 0px 5px 20px; }
.cases .case .rh { padding:30px 30px 30px 0px; }
.cases .case .map { background:url(images/map.gif) no-repeat 0px 0px; width:357px; height:355px; float:right; position:relative; }
.cases .case .map a { display:block; width:60px; height:33px; text-indent:-9999px; background-color:#FFFFFF; border-radius:2px; filter:alpha(opacity=0); opacity:0; }
.cases .case .map a:hover { filter:alpha(opacity=25); opacity:0.25; }
.cases .case .map .m1 a { width:85px; height:50px; }
.cases .case .map li.m6 a { height:34px; }
.cases .case .map li.m2 a, .cases .case .map li.m3 a, .cases .case .map li.m5 a, .cases .case .map li.m9 a { width:61px; }
.map .m5 a {
}
.map .m5 a {
}


.cases .case .map li { position:absolute; }
.cases .case .map li.m1 {
    left: 113px;
    top: 162px;
}
.cases .case .map li.m2 {
    left: 150px;
    top: 36px;
}
.cases .case .map li.m3 {
    left: 147px;
    top: 84px;
}
.cases .case .map li.m4 {
    left: 222px;
    top: 101px;
}
.cases .case .map li.m5 {
    left: 31px;
    top: 164px;
}
.cases .case .map li.m6 { left:39px; top:169px; }
.cases .case .map li.m7 {
    left: 225px;
    top: 174px;
}
.cases .case .map li.m8 { left:153px; top:221px; }
.cases .case .map li.m9 { left:50px; top:254px; }
.cases .case .map li.m10 {
    left: 75px;
    top: 102px;
}

.bubbles { width:960px; margin:0 auto; text-align:left; padding:37px 0px 37px 0px; }
.bubbles h2 { text-align:center; padding-bottom:10px; }
.bubbles .cf { background:url(images/bubblebg.gif) no-repeat center bottom; padding-bottom:5px; }
.bubbles .rh { text-align:right; }
.bubbles .lf div, .bubbles .rh div { padding-top:25px; }

.about { background:url(images/midbg.gif); }
.about .cont2 { background:url(images/aboutbg.png) no-repeat center top; width:960px; margin:0 auto; text-align:left; }
.about .cont { background:url(images/about.png) no-repeat right bottom; padding:45px 0px 40px 0px; }
.about .cont p { font-size:16px; line-height:180%; padding:30px 0px 10px 10px; width:500px; }
.about .cont p span { font-size:20px; font-weight:bold; color:#054595; }

.camp { background:url(images/campbg.gif) repeat-x bottom; }

.cinfo { background-color:#FFFFFF; }
.cinfo .cont2 { background-color:#FFFFFF; width:960px; margin:0 auto; text-align:left; padding:35px 0px 40px 0px; }
.cinfo h2 { font-size:21px; border-left:#054595 solid 5px; padding:2px 0px 0px 10px; line-height:23px; margin-bottom:20px; }
.cinfo table { width:50%; border-collapse:collapse; font-size:14px; line-height:20px; text-align:left; margin-bottom:30px; }
.cinfo th { border:#d4d4d6 solid 1px; background-color:#c6c6c8; width:100px; padding:15px 0px 15px 15px; font-weight:normal; }
.cinfo td { border:#d4d4d6 solid 1px; padding:15px 10px 15px 15px; }
.cinfo td.ht { height:71px; }
.cinfo td.ht40 { height:40px; }
.cinfo .infc p { float:left; font-size:14px; line-height:20px; border:#054595 solid 1px; padding:15px 0px 15px 15px; width:710px; }
.cinfo .infc div { float:right; font-size:14px; line-height:20px; padding:16px 0px 16px 15px; background-color:#054595; color:#FFFFFF; width:218px; }
.cinfo .infc p a { color:#054595; text-decoration:underline; }
.cinfo .infc p a:hover { text-decoration:none; }
.cinfo .btns { padding:30px 0px 0px 0px; }
.cinfo .btns a { float:right; }
.cinfo .btns a.b1 { background:url(images/btn2.gif) no-repeat 0px 0px; width:220px; height:40px; text-indent:-9999px; transition:none; -webkit-transition:none; -moz-transition:none; margin-left:30px; }
.cinfo .btns a.b1:hover { background-position:0px -40px; }
.cinfo .btns a.b2 { background:url(images/arrow.gif) no-repeat 0px center; text-decoration:underline; color:#054595; font-size:16px; padding:0px 0px 0px 20px; margin-top:12px; }
.cinfo .btns a.b2:hover { text-decoration:none; }

.cinfo2 { background: #1c8dd4; border-top:#1398e6 solid 5px; }
.cinfo2 .cont2 { background-color: inherit; }
.cinfo2 h2 { color: #fff; border-left:#ffdd00 solid 5px; }
.cinfo2 table { width: 100%; background: #fff; }
.cinfo2 th { background: #054595; color: #fff; padding: 15px; }
.cinfo2 th, .cinfo2 td { border:#275a9a solid 1px; }
.cinfo2 .note {text-align: right; color: #fff; }
.cinfo2 td { padding: 15px 10px;}
.cinfo2 td.col2 { padding: 0; }
.cinfo2 td.col2 div { display: -webkit-box; display: -ms-flexbox; display: flex; }
.cinfo2 td.col2 span { padding: 15px 10px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.cinfo2 td.col2 span:first-child { border-right: #275a9a solid 1px; width: 105px;}
.cinfo2 td.col2 span:last-child { letter-spacing: -1px; }
/* Footer */

address { background-color:#0e72c8; font-style:normal; font-size:15px; color:#FFFFFF; padding:24px 0px 20px 0px; }
.ptop { position:fixed; right:0px; bottom:0px; width:63px; height:83px; overflow:hidden; }
.ptop a { position:absolute; top:86px; left:3px; }
.ptop img { border-top-left-radius:5px; border-bottom-left-radius:5px; -webkit-box-shadow:0px 0px 3px rgba(0, 0, 0, 0.3); -moz-box-shadow:0px 0px 3px rgba(0, 0, 0, 0.3); box-shadow:0px 0px 3px rgba(0, 0, 0, 0.3); }

/* Enviroments */

.lf { float:left; }
.rh { float:right; }
.clr { clear:both; }
.cf:after { content:" "; display:block; height:0; clear:both; overflow:hidden; visibility:hidden; }


/* MV*/
.mainimage { background: url("/landing/images/headbnrbg_2.jpg") repeat-x center top; }
.mainimage * { position: static; }
.mainimage .inner { width: 960px; margin: 0 auto; position: relative; }
.mainimage ul li { position: absolute; top: 20px; font-family: 'Noto Serif JP', serif; font-weight: bold; font-size: 24px; padding: 0 15px; color: #fff; }
.mainimage ul li:nth-child(1) { left: 177px; }
.mainimage ul li:nth-child(2) { left: 340px; }
.mainimage ul li:nth-child(3) { left: 463px; }
.mainimage ul li:nth-child(4) { left: 635px; }
.mainimage p:nth-child(4) { position: absolute; font-size: 40px; font-family: 'Noto Serif JP', serif; font-weight: bold; background: -webkit-gradient(linear, left top, right top, color-stop(25%, #0142ba), color-stop(75%, #0173d6)); background: linear-gradient(to right, #0142ba 25%, #0173d6 75%); -webkit-background-clip: text; color: transparent; top: 90px; letter-spacing: 3px; left: 258px; }
.mainimage p:nth-child(4) span { font-size: 60px; background: -webkit-gradient(linear, left top, right top, color-stop(25%, #0142ba), color-stop(75%, #0173d6)); background: linear-gradient(to right, #0142ba 25%, #0173d6 75%); -webkit-background-clip: text; color: transparent; padding: 0; position: relative; bottom: -1px; }
.mainimage p:nth-child(4) span:nth-child(3) { font-size: 27px; }
.mainimage p:nth-child(4) span:nth-child(5) { font-size: 12px; color: #333; }
.mainimage div:nth-child(5) > span:nth-child(1) { position: absolute; top: 142px; left: 261px; letter-spacing: 1px; color: #fff; font-weight: bold; font-size: 18px; padding: 10px 10px 6px 10px; border-radius: 3px; background: -webkit-linear-gradient(45deg, #058adc, #09a4e7); background: -moz-linear-gradient(45deg, #058adc, #09a4e7); background: -ms-linear-gradient(45deg, #058adc, #09a4e7); background: -o-linear-gradient(45deg, #058adc, #09a4e7); background: linear-gradient(45deg, #058adc, #09a4e7);}
.mainimage div:nth-child(5) > span:nth-child(2) { position: absolute; top: 152px; left: 443px; letter-spacing: 1px; color: #000; font-weight: bold; font-size: 25px; }
.mainimage div:nth-child(5) > span:nth-child(2) span { font-size: 20px; }
.mainimage div:nth-child(6) span { background: -webkit-gradient(linear, left top, left bottom, color-stop(25%, #fc6401), color-stop(75%, #d02301)); background: linear-gradient(to bottom, #fc6401 25%, #d02301 75%); -webkit-background-clip: text; color: transparent; line-height: 1; }
.mainimage div:nth-child(6) > span:nth-child(1) { position: absolute; top: 193px; left: 260px; font-size: 26px; font-weight: bold; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; text-orientation: upright; color: #d02301; font-family: 'Noto Sans JP', sans-serif; letter-spacing: 1px; }
.mainimage div:nth-child(6) > span:nth-child(2) { position: absolute; top: 182px; left: 290px; font-size: 68px; font-weight: bold; font-family: 'Noto Serif JP', serif; letter-spacing: -2px; }
.mainimage div:nth-child(6) > span:nth-child(3) { position: absolute; top: 202px; left: 427px; font-size: 30px; font-weight: bold; font-family: 'Noto Serif JP', serif; }
.mainimage div:nth-child(6) > span:nth-child(4) { position: absolute; top: 173px; left: 459px; font-size: 80px; font-weight: bold; font-family: 'Noto Serif JP', serif; letter-spacing: -2px; }
.mainimage div:nth-child(6) > span:nth-child(5) { position: absolute; top: 218px; left: 616px; font-size: 30px; font-weight: bold; font-family: 'Noto Serif JP', serif; }
.mainimage div:nth-child(7) > span:nth-child(1) { position: absolute; top: 216px; left: 677px; font-size: 15px; font-weight: bold; color: #fff; }
.mainimage div:nth-child(7) > span:nth-child(2) { position: absolute; top: 219px; left: 758px; font-size: 15px; font-weight: bold; color: #032f90; }
.mainimage div:nth-child(7) > span:nth-child(3) { position: absolute; top: 215px; left: 792px; font-size: 28px; font-weight: bold; color: #032f90; font-family: 'Noto Serif JP', serif; }
.mainimage div:nth-child(7) > span:nth-child(4) { position: absolute; top: 215px; left: 850px; font-size: 20px; font-weight: bold; color: #032f90; font-family: 'Noto Serif JP', serif; }
.mainimage div:nth-child(7) > span:nth-child(5) { position: absolute; top: 215px; left: 869px; font-size: 28px; font-weight: bold; color: #032f90; font-family: 'Noto Serif JP', serif; }
.mainimage div:nth-child(7) > span:nth-child(6) { position: absolute; top: 220px; left: 927px; font-size: 20px; font-weight: bold; color: #032f90; font-family: 'Noto Serif JP', serif; }
.mainimage p:nth-child(8) { position: absolute; top: 79%; left: 31%; color: #000; font-weight: bold; text-align: left; font-size: 11px; }
.mainimage p:nth-child(8) span { color: #ff8f00; }

@media all and (-ms-high-contrast: none) {
  .mainimage p:nth-child(4), .mainimage p:nth-child(4) span {
    background: none;
    color: #0142ba; }

  .mainimage div:nth-child(6) span {
    background: none;
    color: #fc6401; } }