@charset "UTF-8";
/*------------------------------------------------------------ index ------------------------------------------------------------*/
.both { position: absolute; top: -157px; left: 0; width: 100%; opacity: 0.5; z-index: 1000; }

.both img { display: block; width: 1200px; margin: 0 auto; }

.mainVisual { position: relative; box-sizing: border-box; }

.mainVisual li img { width: 100%; height: auto; }

.mainVisual .slick-dots { position: absolute; bottom: 15px; left: 0; display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; width: 100%; }

.mainVisual .slick-dots li { margin: 0 10px; }

.mainVisual .slick-dots li button { text-indent: -9999px; border-radius: 15px; background: #bbbdbd; border: none; width: 10px; height: 10px; }

@media all and (max-width: 896px) { .mainVisual .slick-dots { bottom: 6vw; }
  .mainVisual .slick-dots li { margin: 0 1.86667vw; }
  .mainVisual .slick-dots li button { border-radius: 2.4vw; width: 2.4vw; height: 2.4vw; } }

.mainVisual .slick-dots li button:hover, .mainVisual .slick-dots li.slick-active button { background: #b51e32; }

#cont01 { padding: 53px 0 0 0; }

#cont01 .title { margin: 0 0 26px 0; }

#cont01 .title h2 { width: 146px; margin: 0 auto; }

#cont01 .title h2 img { width: 100%; height: auto; }

#cont01 .title p { text-align: center; font-size: 20px; color: #1f4c93; margin: 13px 0 0 0; }

#cont01 .slide2 { background: #c8d7f0; padding: 20px 0; }

#cont01 .slide2 .slick-slide { position: relative; top: 0; left: 0; /* width: 57vw; */ margin: 0 17px; }

#cont01 .slide2 .slick-slide:after { content: ''; display: block; position: absolute; top: 0; left: 0; background: rgba(0, 0, 0, 0.5); width: 100%; height: 100%; }

#cont01 .slide2 .slick-slide.slick-current::after { display: none; }

#cont01 .slide2 .slick-slide img { width: 100%; height: auto; }

#cont01 .slide2 .slick-arrow { position: absolute; top: 40%; background: transparent center center no-repeat; text-indent: -9999px; background-size: cover; border: none; width: 25px; height: 50px; z-index: 10; cursor: pointer; }

#cont01 .slide2 .slick-arrow.slick-next { right: 11%; background-image: url(../img/top/right.svg); }

#cont01 .slide2 .slick-arrow.slick-prev { left: 11%; background-image: url(../img/top/left.svg); }

@media all and (max-width: 896px) { #cont01 { padding: 9.2vw 0 0 0; }
  #cont01 .title { margin: 0 0 2.93333vw 0; }
  #cont01 .title h2 { width: 19.33333vw; }
  #cont01 .title p { font-size: 4vw; margin: 2.4vw 0 0 0; }
  #cont01 .slide2 { padding: 4.66667vw 0; }
  #cont01 .slide2 .slick-slide { margin: 0 2.26667vw; }
  #cont01 .slide2 .slick-arrow { width: 3.33333vw; height: 6.66667vw; }
  #cont01 .slide2 .slick-arrow.slick-next { right: 11%; background-image: url(../img/top/right.svg); }
  #cont01 .slide2 .slick-arrow.slick-prev { left: 11%; background-image: url(../img/top/left.svg); } }

#cont02 { padding: 93px 0 105px 0; }

#cont02 strong { display: block; text-align: center; font-size: 28px; font-weight: bold; color: #1f4c93; margin: 0 0 24px 0; }

#main #cont02 .video { border: 10px solid #1f4c93; width: 600px; margin: 0 auto; }

#main #cont02 .video video { max-width: none; width: 100%; margin: 0 auto; }

@media all and (max-width: 896px) { #cont02 { padding: 10vw 0 13.86667vw 0; }
  #cont02 strong { font-size: 5.46667vw; line-height: 1.4878; margin: 0 0 2.4vw 0; }
  #main #cont02 .video { border: 1.33333vw solid #1f4c93; width: 76vw; } }

#cont03 { background: #1f4c93 url(../img/top/bg.jpg) center center no-repeat; background-size: cover; padding: 52px 0 85px 0; }

#cont03 .title { margin: 0 auto 32px auto; }

#cont03 .title h2 { width: 189px; margin: 0 auto 11px auto; }

#cont03 .title p { font-size: 20px; text-align: center; color: #FFFFFF; }

#cont03 ul { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; flex-wrap: wrap; max-width: 1100px; margin: 0 auto; }

#cont03 ul li { background: #FFFFFF; width: 530px; padding: 6px; box-sizing: border-box; margin: 0 40px 32px 0; }

#cont03 ul li:nth-child(2) { margin: 0 0 32px 0; }

#cont03 ul li:last-child { margin: 0; }

#cont03 ul li .in { position: relative; top: 0; left: 0; border: 1px solid #1f4c93; width: 100%; margin: 0 auto; box-sizing: border-box; padding: 45px 0 42px 0; }

#cont03 ul li .in:before, #cont03 ul li .in:after { content: ''; display: block; position: absolute; width: 0; height: 0; border-style: solid; }

#cont03 ul li .in:before { top: 0; left: 0; border-width: 12px 12px 0 0; border-color: #1f4c93 transparent transparent transparent; }

#cont03 ul li .in:after { bottom: 0; right: 0; border-width: 0 0 12px 12px; border-color: transparent transparent #1f4c93 transparent; }

#cont03 ul li .in .sub span { display: block; text-align: center; font-weight: bold; font-size: 18px; letter-spacing: 0.12em; line-height: 1; color: #1f4c93;    line-height: 1.5em; }

#cont03 ul li .in .sub span em { color: #d80c18; font-style: normal; font-weight: bold; }

#cont03 ul li .in .sub strong { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; border-radius: 50px; background: #f18730; color: #FFFFFF; font-weight: bold; font-size: 26px; width: 440px; height: 50px; margin: 8px auto 11px auto; }

#cont03 ul li .in .sub strong sup { font-size: 13px; }

#cont03 ul li .in .sub strong em { font-size: 13px; }

#cont03 ul li .in .img { width: 440px; margin: 18px auto 26px auto; }

#cont03 ul li .in .text { width: 442px; margin: 0 auto; }

#cont03 ul li .in .text p { font-size: 16px; line-height: 1.5; }

#cont03 ul li .in .text span { display: block; font-size: 13px; color: #808080; margin: 9px 0 0 0; }

@media all and (max-width: 896px) { #cont03 { background: #1f4c93 url(../img/top/bg.jpg) center center no-repeat; background-size: cover; padding: 12vw 0 9.86667vw 0; }
  #cont03 .title { margin: 0 auto 2.93333vw auto; }
  #cont03 .title h2 { width: 25.2vw; margin: 0 auto 2.53333vw auto; }
  #cont03 .title p { font-size: 4vw; }
  #cont03 ul { display: block; }
  #cont03 ul li { width: 90.66667vw; padding: 1.46667vw; margin: 0 auto 5.06667vw auto; }
  #cont03 ul li:nth-child(2) { margin: 0 auto 4.53333vw auto; }
  #cont03 ul li:last-child { margin: 0 auto; }
  #cont03 ul li .in { padding: 6.13333vw 0 5.33333vw 0; }
  #cont03 ul li .in:before { border-width: 2vw 2vw 0 0; border-color: #1f4c93 transparent transparent transparent; }
  #cont03 ul li .in:after { border-width: 0 0 2vw 2vw; border-color: transparent transparent #1f4c93 transparent; }
  #cont03 ul li .in .sub span { font-size: 4.26667vw; }
  #cont03 ul li .in .sub strong { border-radius: 6.66667vw; font-size: 4.53333vw; width: 77.06667vw; height: 8.8vw; margin: 1.46667vw auto 2.13333vw auto; }
  #cont03 ul li .in .sub strong sup { font-size: 16 7.5vw; }
  #cont03 ul li .in .sub strong em { font-size: 2.13333vw; }
  #cont03 ul li .in .img { width: 77.06667vw; margin: 3.73333vw auto 3.73333vw auto; }
  #cont03 ul li .in .img img { max-width: none; width: 100%; height: auto; }
  #cont03 ul li .in .text { width: 77.06667vw; }
  #cont03 ul li .in .text p { font-size: 3.6vw; line-height: 1.66667; }
  #cont03 ul li .in .text span { font-size: 3.33333vw; line-height: 1.6; margin: 1.33333vw 0 0 0; } }

#cont04 { padding: 98px 0 0 0; }

#cont04 .title { margin: 0 0 28px 0; }

#cont04 .title h2 { width: 180px; margin: 0 auto 14px auto; }

#cont04 .title p { font-size: 20px; text-align: center; color: #1f4c93; }

#cont04 ul { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: space-between; width: 1100px; margin: 0 auto; }

#cont04 ul li { background: #fff3e1; width: 340px; padding: 7px; box-sizing: border-box; }

#cont04 ul li div { position: relative; top: 0; left: 0; border: 1px solid #f18730; box-sizing: border-box; padding: 18px 0 18px 0; }

#cont04 ul li div:before, #cont04 ul li div:after { content: ''; display: block; position: absolute; width: 0; height: 0; border-style: solid; }

#cont04 ul li div:before { top: 0; left: 0; border-width: 12px 12px 0 0; border-color: #f18730 transparent transparent transparent; }

#cont04 ul li div:after { bottom: 0; right: 0; border-width: 0 0 12px 12px; border-color: transparent transparent #f18730 transparent; }

#cont04 ul li div span { display: block; width: 286px; margin: 0 auto 23px auto; }

#cont04 ul li div strong { display: block; font-weight: bold; font-size: 18px; color: #f18730; text-align: center; line-height: 1.5; margin: 0 0 15px 0; }

#cont04 ul li div p { font-size: 16px; line-height: 1.5; width: 280px; margin: 0 auto; }

#cont04 ul li div em { display: block; color: #808080; font-size: 13px; font-style: normal; width: 280px; margin: 4px auto 0 auto; }

@media all and (max-width: 896px) { #cont04 { padding: 12.93333vw 0 10.13333vw 0; }
  #cont04 .title { margin: 0 0 5.06667vw 0; }
  #cont04 .title h2 { width: 24.93333vw; margin: 0 auto 2.4vw auto; }
  #cont04 .title p { font-size: 4vw; }
  #cont04 ul { position: relative; top: 0; left: 0; display: block; background: #fff3e1; width: 90.66667vw; padding: 9.06667vw 1.46667vw 1.46667vw 1.46667vw; box-sizing: border-box; }
  #cont04 ul:after { content: ''; display: block; position: absolute; top: 0.6%; left: 1.6%; width: 96.4%; height: 98.8%; border: 1px solid #f18730; }
  #cont04 ul li { border-bottom: 2px dotted #f18730; width: 78.66667vw; padding: 0; margin: 0 auto 8.8vw auto; }
  #cont04 ul li:last-child { border: none; margin: 0 auto; }
  #cont04 ul li div { border: none; padding: 0 0 6.93333vw 0; }
  #cont04 ul li div:before { display: none; }
  #cont04 ul li div:after { display: none; }
  #cont04 ul li div span { width: 100%; margin: 0 auto 2.93333vw auto; }
  #cont04 ul li div span img { width: 100%; height: auto; }
  #cont04 ul li div strong { font-size: 4.26667vw; line-height: 1.5; margin: 0 0 1.6vw 0; }
  #cont04 ul li div p { font-size: 3.6vw; line-height: 1.66667; width: 100%; }
  #cont04 ul li div em { font-size: 1.73333vw; width: 100%; margin: 0.53333vw auto 0 auto; } }

#cont05 { padding: 93px 0 0 0; }

#cont05 .title { margin: 0 0 33px 0; }

#cont05 .title h2 { width: 118px; margin: 0 auto 10px auto; }

#cont05 .title p { font-size: 20px; text-align: center; color: #1f4c93; }

#cont05 .flex { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: space-between; width: 1100px; margin: 0 auto; }

#cont05 .flex .box { position: relative; top: 0; left: 0; background: #e4e9f2; width: 530px; padding: 6px; box-sizing: border-box; }

#cont05 .flex .box .icon { position: absolute; top: -12px; right: -8px; width: 102px; z-index: 10; }

#cont05 .flex .box dl { position: relative; top: 0; left: 0; border: 1px solid #1f4c93; box-sizing: border-box; padding: 40px 0 40px 0; }

#cont05 .flex .box dl:before, #cont05 .flex .box dl:after { content: ''; display: block; position: absolute; width: 0; height: 0; border-style: solid; }

#cont05 .flex .box dl:before { top: 0; left: 0; border-width: 12px 12px 0 0; border-color: #1f4c93 transparent transparent transparent; }

#cont05 .flex .box dl:after { bottom: 0; right: 0; border-width: 0 0 12px 12px; border-color: transparent transparent #1f4c93 transparent; }

#cont05 .flex .box dl dt { width: 440px; margin: 0 auto; }

#cont05 .flex .box dl dt span { display: block; font-size: 18px; text-align: center; line-height: 1; }

#cont05 .flex .box dl dt strong { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; border-radius: 50px; background: #FFFFFF; color: #1f4c93; font-weight: bold; font-size: 26px; width: 440px; height: 50px; margin: 12px 0 19px 0; }

#cont05 .flex .box dl dt p { font-size: 16px; line-height: 1.5; }

#cont05 .flex .box dl dd { width: 440px; margin: 0 auto; }

#cont05 .flex .box dl dd.first { padding: 38px 0 0 0; }

#cont05 .flex .box dl dd.last { padding: 27px 0 9px 0; }

#cont05 .flex .box dl dd p { font-size: 13px; line-height: 2; margin: 30px 0 0 0; }

@media all and (max-width: 896px) { #cont05 { background: #1f4c93 url(../img/top/bg.jpg) center center no-repeat; background-size: cover; margin: 0; padding: 12.26667vw 0 11.46667vw 0; }
  #cont05 .title { margin: 0 0 4.4vw 0; }
  #cont05 .title h2 { width: 15.6vw; margin: 0 auto 1.33333vw auto; }
  #cont05 .title p { color: #FFFFFF; font-size: 4vw; }
  #cont05 .flex { display: block; width: 90.66667vw; }
  #cont05 .flex .box { background: #FFFFFF; width: 100%; padding: 1.6vw; }
  #cont05 .flex .box:last-child { margin: 4.8vw 0 0 0; }
  #cont05 .flex .box .icon { top: -3.2vw; left: -1.33333vw; right: auto; width: 20.93333vw; }
  #cont05 .flex .box dl { padding: 7.33333vw 0 5.33333vw 0; }
  #cont05 .flex .box dl:before { border-width: 1.6vw 1.6vw 0 0; border-color: #1f4c93 transparent transparent transparent; }
  #cont05 .flex .box dl:after { border-width: 0 0 1.6vw 1.6vw; border-color: transparent transparent #1f4c93 transparent; }
  #cont05 .flex .box dl dt { width: 76.26667vw; }
  #cont05 .flex .box dl dt span { font-size: 4vw; }
  #cont05 .flex .box dl dt strong { background: #e4e9f2; border-radius: 8.53333vw; font-size: 4.3vw; width: 76vw; height: 8.53333vw; margin: 2vw 0 3.06667vw 0; }
  #cont05 .flex .box dl dt p { font-size: 3.6vw; line-height: 1.55556; }
  #cont05 .flex .box dl dd { width: 76vw; }
  #cont05 .flex .box dl dd img { width: 100%; height: auto; }
  #cont05 .flex .box dl dd.first { padding: 4.26667vw 0 0 0; }
  #cont05 .flex .box dl dd.last { padding: 3.2vw 0 2.26667vw 0; }
  #cont05 .flex .box dl dd p { font-size: 3.33333vw; line-height: 1.6; margin: 3.86667vw 0 0 0; } }

#cont06 { padding: 90px 0 12px 0; }

#cont06 .title { margin: 0 0 30px 0; }

#cont06 .title h2 { width: 98px; margin: 0 auto 12px auto; }

#cont06 .title p { font-size: 20px; text-align: center; color: #1f4c93; }

#cont06 ul { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: space-between; width: 1100px; margin: 0 auto; }

#cont06 ul li { width: 250px; }

#cont06 ul li.arrow { width: 15px; padding: 60px 0 0 0; }

#cont06 ul li span { display: block; margin: 0 0 18px 0; }

#cont06 ul li strong { display: block; font-weight: bold; font-size: 18px; color: #1f4c93; margin: 0 0 8px 0; }

#cont06 ul li p { font-size: 15px; line-height: 1.46667; }

@media all and (max-width: 896px) { #cont06 { background: #1f4c93 url(../img/top/bg.jpg) center top -2px no-repeat; background-size: cover; margin: 0 0 1.6vw 0; padding: 0 0 11.33333vw 0; }
  #cont06 .title { margin: 0 0 4.93333vw 0; }
  #cont06 .title h2 { width: 13.06667vw; margin: 0 auto 2.93333vw auto; }
  #cont06 .title p { color: #FFFFFF; font-size: 4vw; }
  #cont06 ul { flex-wrap: wrap; width: 90.66667vw; }
  #cont06 ul li { width: 42.4vw; margin: 0 0 5.06667vw 0; }
  #cont06 ul li img { width: 100%; height: auto; }
  #cont06 ul li span { margin: 0 0 2.13333vw 0; }
  #cont06 ul li strong { border-bottom: 1px solid #FFFFFF; text-align: center; color: #FFFFFF; font-size: 4vw; padding: 0 0 1.06667vw 0; margin: 0 0 1.73333vw 0; }
  #cont06 ul li p { font-size: 3.33333vw; line-height: 1.6; color: #FFFFFF; } }

#bnr { background: #1f4c93 url(../img/top/bg2.jpg) center center no-repeat; background-size: cover; padding: 47px 0 45px 0; }

#bnr a { display: block; width: 920px; margin: 0 auto; box-shadow: 0px 8px 16px -2px rgba(10, 10, 10, 0.1), 4px 5px 11px 0px rgba(0, 0, 0, 0.4); }

@media all and (max-width: 896px) { #bnr { background: #1f4c93 url(../img/top/bg2.jpg) center center no-repeat; background-size: cover; padding: 12.53333vw 0 12.53333vw 0; }
  #bnr a { width: 90.66667vw; box-shadow: 0vw 1.06667vw 2.13333vw -0.26667vw rgba(10, 10, 10, 0.1), 0.53333vw 0.66667vw 1.46667vw 0vw rgba(0, 0, 0, 0.4); } }

#cont07 { padding: 105px 0 90px 0; }

#cont07 ul { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; width: 920px; margin: 0 auto 40px auto; }

#cont07 ul li { width: 284px; margin: 0 34px 0 0; }

#cont07 ul li:last-child { margin: 0; }

#cont07 ul li a span { display: block; margin: 0 0 14px 0; }

#cont07 ul li a em { display: block; font-style: normal; font-size: 15px; line-height: 1.46667; }

#cont07 ol { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; width: 920px; margin: 0 auto; }

#cont07 ol li { width: 284px; margin: 0 34px 0 0; }

#cont07 ol li:last-child { margin: 0; }

#cont07 ol li a span { display: block; margin: 0 0 14px 0; }

#cont07 ol li a em { display: block; font-style: normal; font-size: 15px; line-height: 1.46667; }

@media all and (max-width: 896px) { #cont07 { padding: 17.2vw 0 8.4vw 0; }
  #cont07 ul { display: block; width: 90.66667vw; }
  #cont07 ul img { width: 100%; height: auto; }
  #cont07 ul li { width: 100%; margin: 0 auto 8.53333vw auto; }
  #cont07 ul li a span { margin: 0 0 2.66667vw 0; }
  #cont07 ul li a em { font-size: 3.6vw; line-height: 1.66667; }
  #cont07 ol { display: block; width: 90.66667vw; }
  #cont07 ol img { width: 100%; height: auto; }
  #cont07 ol li { width: 100%; margin: 0 auto 8.53333vw auto; }
  #cont07 ol li a span { margin: 0 0 2.66667vw 0; }
  #cont07 ol li a em { font-size: 3.6vw; line-height: 1.66667; } }

#cont08 { padding: 0 0 105px 0; }

#cont08 .title { margin: 0 auto 30px auto; }

#cont08 .title h2 { width: 139px; margin: 0 auto 14px auto; }

#cont08 .title p { font-size: 20px; text-align: center; color: #1f4c93; }

#cont08 .newsBox { width: 710px; height: 450px; overflow: scroll; margin: 0 auto 117px auto; }

#cont08 .newsBox ol li { border-bottom: 1px solid #808080; }

#cont08 .newsBox dl { display: -webkit-flex; display: -ms-flex; display: flex; align-items: center; font-size: 15px; padding: 12px 0 12px 0; }

#cont08 .newsBox dl dt { width: 95px; }

#cont08 .newsBox dl dd { width: 615px; }

#cont08 .newsBox dl dd .newsp{ width: 200px; padding-bottom:10px;}

#cont08 ul { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: space-between; width: 920px; margin: 0 auto; }

#cont08 ul li {width: 170px;
    text-align: center;}

#cont08 ul li a { display: -webkit-flex; display: -ms-flex; display: flex; justify-content: center; align-items: center; background: #b51e32; border-radius: 60px; color: #FFFFFF; font-weight: bold; letter-spacing: 0.12em; line-height: 1.3; width: 100%; height: 50px;font-size: 10px; }

#cont08 ul li a em { margin: 0 6px; }

#cont08 ul li a em.icon01 { width: 20px; }

#cont08 ul li a em.icon02 { width: 14px; }

#cont08 ul li a em.icon03 { width: 18px; }

#cont08 ul li:first-child a { background: #1f4c93; }

@media all and (max-width: 896px) { #cont08 { padding: 0 0 14vw 0; }
  #cont08 .title { margin: 0 auto 3.33333vw auto; }
  #cont08 .title h2 { width: 18.66667vw; margin: 0 auto 1.86667vw auto; }
  #cont08 .title p { font-size: 4vw; }
  #cont08 .newsBox { width: 90.66667vw; height: 120vw; margin: 0 auto 14.66667vw auto; }
  #cont08 .newsBox dl { display: block; border-bottom: 1px solid #808080; font-size: 3.6vw; line-height: 1.66667; padding: 1.6vw 0 0.93333vw 0; }
  #cont08 .newsBox dl dt { width: 100%; }
  #cont08 .newsBox dl dd { width: 100%; }
  #cont08 ul { display: block; width: 90.66667vw; }
  #cont08 ul li { width: 100%; margin: 0 0 5.33333vw 0; }
  #cont08 ul li:last-child { margin: 0; }
  #cont08 ul li a { justify-content: space-between; font-size: 4.4vw; border-radius: 18.66667vw; letter-spacing: 0.32em; height: 18.66667vw; box-sizing: border-box; padding: 0 5.73333vw 0 15.2vw; }
  #cont08 ul li a em { margin: 0; }
  #cont08 ul li a em img { width: 100%; height: auto; }
  #cont08 ul li a em.icon01 { width: 4.66667vw; }
  #cont08 ul li a em.icon02, #cont08 ul li a em.icon04 { width: 4.93333vw; }
  #cont08 ul li a em.icon03 { width: 5.86667vw; } }

#a05 .title { margin: 0 0 12px 0; }

#a05 .title h2 { width: 268px; margin: 0 auto 14px auto; }

#a05 .title p { font-size: 20px; text-align: center; color: #1f4c93; }

@media all and (max-width: 896px) { #a05 .title { margin: 0 0 1.6vw 0; }
  #a05 .title h2 { width: 36.4vw; margin: 0 auto 1.86667vw auto; }
  #a05 .title p { font-size: 4vw; } }

.mainVisual .textImg02 { position: absolute; right: 51px; bottom: 151px; width: 270px; }

#main .topBg { padding-top: 1px; background: url("../img/index/bg01.jpg") no-repeat top center; background-size: cover; }

#main .video_text { color: #172D72; font-size: 2.6rem; line-height: 1.63; letter-spacing: 0.22em; text-align: center; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; margin: 42px 0 0 0; }

#main .video { width: 650px; height: auto; margin: 25px auto 0; }

#main video { width: 650px; }

#main .sec01 { width: calc(50% + 460px); margin: 0 0 78px auto; padding: 49px 0; position: relative; z-index: 1; background: linear-gradient(90deg, #0d3276 0%, #2757ba 100%); }

#main .sec01 .content { width: 900px; margin: 0 0 0 50px; }

#main .sec01 h2 { width: 150px; height: 79px; padding-top: 6px; color: #fff; font-weight: 500; letter-spacing: 0.08em; text-align: center; box-sizing: border-box; background: url("../img/index/h2_bg01.png") no-repeat; background-size: 100% 100%; }

#main .sec01 h2 span { display: block; font-size: 2.55rem; letter-spacing: 0.15em; }

#main .sec01 .newsBox { margin: -13px 0 0; width: 730px; box-sizing: border-box; }

#main .sec01 .newsBox dl { height: 90px; }

#main .sec01 dt { padding-top: 12px; float: left; font-weight: bold; color: #fff; letter-spacing: 0.08em; }

#main .sec01 dd { padding: 12px 0 11px 7.6em; color: #fff; letter-spacing: 0.08em; border-bottom: 1px solid #4486AE; }

#main .sec01 dd a { color: #fff; }

#main .sec01 dd a:hover { text-decoration: underline; }

#main .sec02 { padding: 101px 0 99px; }

#main .sec02 .imgBox { margin-bottom: 42px; }

#main .sec02 .pho { width: 460px; }

#main .sec02 .textBox { width: 390px; margin-top: -7px; }

#main .sec02 .headLine01 { margin-bottom: 17px; text-align: left; }

#main .sec02 .headLine01 span { background-position: left bottom; }

#main .sec02 p { line-height: 2; letter-spacing: 0.05em; }

#main .sec03 { max-width: 1200px; padding: 100px 0; margin: 0 auto; position: relative; background: url("../img/index/bg02.jpg") no-repeat center center; background-size: cover; box-sizing: border-box; overflow: hidden; }

#main .sec03 .enImg01 { position: absolute; top: 16px; right: -2px; width: 67px; }

#main .sec03 .enImg02 { position: absolute; bottom: 7px; left: -3px; width: 67px; }

#main .sec03 .imgBox { padding: 34px 40px 22px 354px; position: relative; background-color: #fff; }

#main .sec03 .imgBox .pho { position: absolute; left: 33px; top: 11px; width: 290px; z-index: 1; }

#main .sec03 .headLine01 { margin-bottom: 2px; font-size: 2rem; text-align: left; letter-spacing: 0.15em; }

#main .sec03 .imgBox li { padding: 7px 0 4px 27px; color: #000; border-bottom: 1px dashed #aaa; letter-spacing: 0.12em; background: url("../img/common/icon04.png") no-repeat left 1px top 5px; background-size: 16px auto; }

#main .sec03 .imgInfo { padding: 16px 170px 34px 354px; position: relative; background-color: #192858; }

#main .sec03 .imgInfo .headLine01 { margin-bottom: -4px; color: #fff; letter-spacing: 0.1em; }

#main .sec03 .imgInfo p { color: #fff; line-height: 2; }

#main .sec03 .imgInfo .pho { position: absolute; right: 41px; top: 17px; width: 107px; }

#main .sec04 { padding: 90px 0 99px; background: url("../img/index/bg03.jpg") no-repeat top center; background-size: cover; }

#main .sec04 .imgBox { max-width: 1200px; margin: 0 auto 50px; }

#main .sec04 .pho { width: 600px; }

#main .sec04 .textBox { width: 460px; padding: 33px 40px 20px 60px; box-sizing: border-box; background-color: #fff; }

#main .sec04 .textBox p { color: #000; line-height: 2; text-align: justify; text-justify: inter-ideograph; letter-spacing: 0.05em; }

#main .sec04 .textBox h3 { margin-bottom: 24px; color: #0F2C76; font-size: 1.6rem; letter-spacing: 0.27em; }

#main .sec04 .textBox h3 .dio { margin-bottom: 9px; display: block; font-size: 2rem; letter-spacing: 0.17em; }

#main .sec04 .textBox h3 .sml { display: block; margin-top: 6px; }

#main .sec04 .textBox h3 .sml span { margin: -1px 10px 0 0; padding: 5px 17px; font-size: 1.7rem; display: inline-block; vertical-align: middle; border: 1px solid #0F2C76; box-sizing: border-box; letter-spacing: 0.2em; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; }

#main .sec04 .imgBox01 { margin-bottom: 12px; justify-content: flex-end; }

#main .sec04 .imgBox01 .textBox { padding: 33px 50px 20px 40px; }

#main .sec04 .btmText { margin-bottom: 18px; color: #969696; letter-spacing: 0.13em; }

#main .sec05 { padding: 95px 0 99px; background: url("../img/index/bg04.jpg") no-repeat top center; background-size: cover; }

#main .sec05 .headLine01 { margin-bottom: 49px; }

#main .sec05 .photoUl { margin-bottom: 42px; position: relative; }

#main .sec05 .photoUl:after { content: ""; width: 290px; }

#main .sec05 .photoUl li { width: 290px; }

#main .sec05 .photoUl .pho { margin-bottom: 28px; }

#main .sec05 .photoUl p { color: #000; line-height: 2; letter-spacing: 0.05em; text-align: justify; text-justify: inter-ideograph; }

#main .sec05 .photoUl h3 { margin-bottom: 8px; padding-bottom: 9px; text-align: center; color: #0F2C76; font-size: 1.5rem; letter-spacing: 0.2em; border-bottom: 1px solid #0F2C76; }

#main .sec06 { padding: 99px 0; background: url("../img/index/bg05.jpg") no-repeat top center; background-size: cover; }

#main .sec06 h2 { margin-bottom: 51px; color: #fff; }

#main .sec06 h2 .sml { color: #fff; }

#main .sec06 .photoUl { margin-bottom: 52px; }

#main .sec06 .photoUl li { width: 230px; }

#main .sec06 .photoUl li:not(:last-child) .pho:before { position: absolute; right: -11px; top: 50%; margin-top: -15px; background: url("../img/common/icon11.png") no-repeat; background-size: 11px 31px; width: 11px; height: 31px; content: ""; z-index: 1; }

#main .sec06 .photoUl .pho { margin-bottom: 25px; position: relative; }

#main .sec06 .photoUl p { margin: 0 15px; color: #fff; line-height: 2; text-align: justify; text-justify: inter-ideograph; }

#main .sec06 .photoUl h3 { margin: 0 16px 9px; padding-bottom: 12px; text-align: center; color: #fff; font-size: 1.5rem; letter-spacing: 0.36em; border-bottom: 1px solid #fff; }

#main .sec06 .textUl { margin-bottom: 51px; }

#main .sec06 .textUl > li { width: 450px; padding: 58px 60px 50px 59px; background-color: #fff; box-sizing: border-box; }

#main .sec06 .textUl h3 { margin-bottom: 13px; padding-bottom: 4px; position: relative; border-bottom: 1px solid #0F2C76; }

#main .sec06 .textUl h3 img { width: 132px; position: absolute; left: -42px; top: -52px; }

#main .sec06 .textUl h3 .sml { margin-bottom: 0; font-size: 1.3rem; letter-spacing: 0.18em; }

#main .sec06 .textUl p { margin-bottom: 19px; color: #000; line-height: 2; letter-spacing: 0.05em; text-align: justify; text-justify: inter-ideograph; }

#main .sec06 .textUl ul { margin-top: 12px; }

#main .sec06 .textUl li li { color: #969696; line-height: 2; text-indent: -1em; padding-left: 1em; }

#main .sec07 { padding: 90px 0 98px; }

#main .sec07 .headLine01 { margin-bottom: 8px; }

#main .sec07 .lineBox { margin-bottom: 17px; overflow: hidden; }

#main .sec07 .qaUl { margin-bottom: -1px; }

#main .sec07 .qaUl li { width: 430px; position: relative; border-bottom: 1px solid #EFEFEF; }

#main .sec07 .qaUl li:nth-child(2n + 1):before { position: absolute; right: -30px; top: 30px; bottom: 30px; width: 1px; background-color: #EFEFEF; content: ""; }

#main .sec07 .qaUl .qText { padding: 12px 0 0 33px; height: 67px; color: #0F2C76; font-weight: bold; display: flex; align-items: center; font-size: 1.6rem; line-height: 1.25; letter-spacing: 0.15em; position: relative; border-bottom: 1px solid #0F2C76; box-sizing: border-box; }

#main .sec07 .qaUl .qText:before { margin-top: -6px; position: absolute; left: 0; top: 50%; background: url("../img/index/icon01.png") no-repeat; background-size: 26px auto; width: 26px; height: 26px; content: ""; }

#main .sec07 .qaUl .aText { padding: 9px 0 24px 31px; line-height: 2; color: #000; position: relative; text-align: justify; text-justify: inter-ideograph; }

#main .sec07 .qaUl .aText:before { position: absolute; left: 0; top: 14px; background: url("../img/index/icon02.png") no-repeat; background-size: 26px auto; width: 26px; height: 26px; content: ""; }

#main .sec07 .qaUl .aText a:hover { text-decoration: underline; }

#main .sec07 .photoUl { position: relative; }

#main .sec07 .photoUl:after { width: 292px; content: ""; }

#main .sec07 .photoUl li { width: 292px; }

#main .sec07 .photoUl p { margin-top: 24px; color: #000; line-height: 2; text-align: justify; text-justify: inter-ideograph; }

@media all and (max-width: 896px) { .mainVisual .textImg01 { width: 296px; margin: 0 0 0 auto; }
  .mainVisual .textImg02 { display: none; }
  #main .topBg { padding-top: 1px; background-image: url("../img/index/sp_bg01.jpg"); }
  #main .video_text { font-size: 2.15rem; line-height: 1.4; margin: 25px 0 0 0; }
  #main .video { width: 100%; }
  #main video { display: block; width: 100%; max-width: 390px; margin: 20px auto 0 auto; }
  #main .sec01 { width: auto; margin: 0 0 80px; padding: 7px 5px; }
  #main .sec01 .content { margin: 0; }
  #main .sec01 h2 { width: 100px; height: 165px; padding-top: 63px; font-size: 1.25rem; background-image: url("../img/index/sp_h2_bg01.png"); }
  #main .sec01 h2 span { font-size: 1.8rem; }
  #main .sec01 .newsBox { margin-top: 0; width: calc(100% - 118px); }
  #main .sec01 .newsBox dl { height: 160px; }
  #main .sec01 dt { padding-top: 11px; float: none; font-size: 1.25rem; letter-spacing: 0.1em; }
  #main .sec01 dd { padding: 0 0 8px; line-height: 1.85; }
  #main .sec01 dd a:hover { text-decoration: none; }
  #main .sec02 { padding: 50px 18px 50px; }
  #main .sec02 .imgBox { margin-bottom: 45px; display: block; }
  #main .sec02 .pho { width: 73.7%; margin: 0 auto 35px; text-align: center; }
  #main .sec02 .textBox { width: auto; margin-top: 0; }
  #main .sec02 .headLine01 { margin-bottom: 25px; text-align: center; }
  #main .sec02 .headLine01 span { background-position: center bottom; }
  #main .sec02 p { line-height: 1.66; letter-spacing: 0.03em; }
  #main .sec03 { max-width: inherit; padding: 78px 17px 76px; background-image: url("../img/index/sp_bg02.jpg"); }
  #main .sec03 .enImg01 { top: -2px; right: auto; left: 6px; width: 252px; }
  #main .sec03 .enImg02 { bottom: -2px; left: auto; right: 6px; width: 283px; mix-blend-mode: overlay; }
  #main .sec03 .imgBox { padding: 40px 10px 25px; }
  #main .sec03 .imgBox .pho { position: static; width: 87px; margin: -5px 0 0 14px; }
  #main .sec03 .headLine01 { margin-bottom: 19px; font-size: 2.15rem; text-align: center; letter-spacing: 0.06em; }
  #main .sec03 .imgSub { display: flex; justify-content: space-between; }
  #main .sec03 .imgSub ul { width: calc(100% - 140px); margin-right: 22px; border-top: 1px dashed #aaa; }
  #main .sec03 .imgBox li { padding: 7px 0 8px 23px; color: #484342; font-size: 1.5rem; line-height: 1.33; letter-spacing: 0.11em; background-position: center left; background-size: 16px auto; }
  #main .sec03 .imgInfo { padding: 24px 30px 49px; }
  #main .sec03 .imgInfo .headLine01 { margin-bottom: 19px; font-size: 2rem; line-height: 1.5; letter-spacing: 0.1em; }
  #main .sec03 .imgInfo .pho { position: static; width: 117px; margin: 0 auto 22px; }
  #main .sec03 .imgInfo p { letter-spacing: 0.05em; }
  #main .sec04 { padding: 38px 0 50px; background-image: url("../img/index/sp_bg03.jpg"); }
  #main .sec04 .imgBox { max-width: inherit; margin: 0 auto 37px; }
  #main .sec04 .pho { width: 100%; order: -1; }
  #main .sec04 .textBox { width: 100%; margin: 0 0 0 18px; padding: 23px 28px 26px !important; }
  #main .sec04 .textBox p { line-height: 1.66; }
  #main .sec04 .textBox h3 { margin-bottom: 18px; font-size: 1.8rem; letter-spacing: 0.2em; }
  #main .sec04 .textBox h3 .dio { margin-bottom: 9px; }
  #main .sec04 .textBox h3 .sml { margin-top: 9px; }
  #main .sec04 .textBox h3 .sml span { margin: -1px 10px 0 0; padding: 6px 8px; font-size: 1.8rem; letter-spacing: 0.2em; }
  #main .sec04 .imgBox01 { margin-bottom: 22px; }
  #main .sec04 .content { padding: 0 18px; }
  #main .sec04 .btmText { margin-bottom: 44px; letter-spacing: 0.14em; line-height: 1.66; }
  #main .sec05 { padding: 56px 17px 73px; background-image: url("../img/index/sp_bg04.jpg"); }
  #main .sec05 .headLine01 { margin-bottom: 25px; }
  #main .sec05 .photoUl { margin-bottom: 48px; display: block; }
  #main .sec05 .photoUl li { width: auto; margin-bottom: 44px; }
  #main .sec05 .photoUl li:last-child { margin-bottom: 0; }
  #main .sec05 .photoUl .pho { margin-bottom: 13px; }
  #main .sec05 .photoUl .pho img { width: 100%; }
  #main .sec05 .photoUl p { line-height: 1.66; letter-spacing: 0.1em; }
  #main .sec05 .photoUl h3 { margin-bottom: 12px; font-size: 1.8rem; line-height: 1.66; letter-spacing: 0.18em; }
  #main .sec06 { padding: 70px 17px 73px; background-image: url("../img/index/sp_bg05.jpg"); }
  #main .sec06 h2 { margin-bottom: 43px; }
  #main .sec06 .photoUl { margin-bottom: 24px; }
  #main .sec06 .photoUl li { width: 50%; padding-bottom: 45px; }
  #main .sec06 .photoUl li:not(:last-child) .pho:before { margin-top: -12px; background-size: 8px auto; }
  #main .sec06 .photoUl li:nth-child(2n) .pho:before { display: none; }
  #main .sec06 .photoUl .pho { margin-bottom: 18px; }
  #main .sec06 .photoUl p { margin: 0 11px; line-height: 1.6; font-size: 1.25rem; }
  #main .sec06 .photoUl h3 { margin: 0 10px 10px; padding-bottom: 7px; letter-spacing: 0.18em; }
  #main .sec06 .photoUl li:nth-child(2) h3 { margin: 0 0 10px; }
  #main .sec06 .photoUl li:nth-child(3) .pho::after { position: absolute; left: 0; top: 50%; background: url("../img/common/icon11.png") no-repeat; margin-top: -12px; background-size: 8px auto; width: 11px; height: 31px; content: ""; z-index: 1; }
  #main .sec06 .textUl { margin-bottom: 56px; display: block; }
  #main .sec06 .textUl > li { width: auto; padding: 46px 30px 28px; margin-bottom: 16px; }
  #main .sec06 .textUl > li:last-child { margin-bottom: 0; }
  #main .sec06 .textUl h3 { margin-bottom: 8px; padding-bottom: 3px; }
  #main .sec06 .textUl h3 img { width: 127px; left: -28px; top: -50px; }
  #main .sec06 .textUl h3 .sml { margin-bottom: -5px; }
  #main .sec06 .textUl p { margin-bottom: 20px; line-height: 1.66; letter-spacing: 0.07em; }
  #main .sec06 .textUl .textImg { text-align: center; }
  #main .sec06 .textUl ul { margin: 24px -10px 0 0; }
  #main .sec06 .textUl li li { line-height: 1.6; font-size: 1.25rem; letter-spacing: -0.05em; }
  #main .sec07 { padding: 42px 0 16vw; }
  #main .sec07 .headLine01 { margin-bottom: -3px; }
  #main .sec07 .qaUl { margin-bottom: 0; display: block; }
  #main .sec07 .qaUl li { width: auto; padding: 14px 18px 14px; }
  #main .sec07 .qaUl li:nth-child(2n + 1):before { display: none; }
  #main .sec07 .qaUl .qText { padding: 10px 30px 10px 45px; height: auto; font-size: 1.65rem; line-height: 1.54; letter-spacing: 0.34em; border-bottom: none; background: url("../img/common/sp_icon05.png") no-repeat right center; background-size: 28px auto; }
  #main .sec07 .qaUl .qText.on { background-image: url("../img/common/sp_icon05_on.png"); }
  #main .sec07 .qaUl .qText:before { margin-top: 0; top: 13px; background: url("../img/common/sp_icon03.png") no-repeat; background-size: 34px auto; width: 34px; height: 35px; }
  #main .sec07 .qaUl .aText { border-top: 1px solid #0F2C76; padding: 8px 0 16px 43px; line-height: 1.66; letter-spacing: 0.05em; display: none; }
  #main .sec07 .qaUl .aText:before { top: 10px; background: url("../img/common/sp_icon04.png") no-repeat; background-size: 34px auto; width: 34px; height: 35px; }
  #main .sec07 .qaUl .aText a:hover { text-decoration: none; }
  #main .sec07 .photoUl { margin: 0 17px; display: block; }
  #main .sec07 .photoUl li { margin-bottom: 43px; width: auto; }
  #main .sec07 .photoUl li:last-child { margin-bottom: 0; }
  #main .sec07 .photoUl p { margin-top: 17px; line-height: 1.66; letter-spacing: 0.1em; }
  #main .sec07 .photoUl img { width: 100%; } }

@media all and (max-width: 340px) { #main .sec07 .qaUl .qText { letter-spacing: 0.1em; } }

@media all and (-ms-high-contrast: none) { #main .sec04 .textBox h3 .sml span { padding: 8px 17px 2px; } }
