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

* {margin:0; padding:0; box-sizing:border-box;}
body {color:#010101; font-family:'Noto Serif JP', serif;}
ol, ul {list-style-type:none;}

/* cf */
.cf:before, .cf:after {content:""; display:block;	overflow:hidden;}
.cf:after {clear:both;}
.cf {zoom:1;}

.fixed {position:fixed; top:0; left:0; z-index:+99;}

table {border-collapse:collapse; border:none; border-spacing:0;}

.blue {color:#00348b;}
.txt_l {text-align:left !important;}

ul.l_1em {}
ul.l_1em li {padding:0.1em 0 0.1em 1em; text-indent:-1em;}
ul.l_2em {}
ul.l_2em li {padding:0.1em 0 0.1em 2em; text-indent:-2em;}
ul.l_25em {}
ul.l_25em li {padding:0.1em 0 0.1em 2.5em; text-indent:-2.5em;}

ol.demical {padding-left:1.5em; list-style-type:decimal;}
ol.demical li {padding:0.1em 0;}

.mT0em {margin-top:0 !important;}
.mT05em {margin-top:0.5em !important;}
.mT1em {margin-top:1em !important;}
.mT2em {margin-top:2em !important;}

/*********************************
 * ～900
 *********************************/

@media screen and (max-width:900px){
	
  body {overflow-x:hidden; -webkit-text-size-adjust:100%; font-size:3.6vw;}
  img {width:100%; height:auto;}
  p {margin-top:1em; text-align:justify; text-justify:inter-ideograph;}
  .pc {display:none;}  
  .wrapper {background:#fff;}
  
  /* header */
  header {position:fixed; top:0; left:0; width:100%; height:92px; font-size:18px; z-index:1000000;}
  header .inner {display:flex; align-items:center; justify-content:space-between; width:100%; height:82px; margin:0 auto; padding:6px 0 0 15px; background:rgba(255,255,255,0.9);}
  header .logo {width:calc(100% - 100px);}
  header .h_left {display:flex; flex-wrap:wrap; flex-direction:column;}
  header .h_left h1 {font-size:10px;}
  header .h_in {width:60px; /*margin-top:-5px;*/ display:flex; align-items:center; justify-content:flex-end;}
  header .h_in dl.tel {display:none; color:#00348b; line-height:1;}
  header .h_in dl.tel dt {font-size:90%; font-weight:700; letter-spacing:0.05em;}
  header .h_in dl.tel dt a {color:#00348b; text-decoration:none;}
  header .h_in dl.tel dd {display:none;}
  header .h_in .contact {font-size:55%;}
  header .h_in .contact a {display:block; padding:0.9em 1.5em; border:1px solid #00348b; color:#00348b; letter-spacing:0.05em; line-height:1; text-decoration:none;}
  header .h_in .gnavbtn  {position:relative; width:60px; height:60px; cursor:pointer; z-index:11;}
  header .h_in .gnavbtn span {position:relative; display:block; width:32px; height:3px; left:12px; background:#00348b; transition:0.3s;}
  header .h_in .gnavbtn span:nth-child(1) {top:18px;}
  header .h_in .gnavbtn span:nth-child(2) {top:26px;}
  header .h_in .gnavbtn span:nth-child(3) {top:34px;}
  
  /* nav */
  nav {overflow-y:auto; position:fixed; display:none; width:100%; height:100%; padding:0 0 4em 0; top:0; left:0; background:#fff; z-index:100000;}
  nav ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:80%; margin:110px auto 0 auto; font-size:105%; font-weight:500;}
  nav ul li {width:100%; margin:4% 0 0 0; text-align:center; letter-spacing:0.1em;}
  nav ul li a {display:block; position:relative; padding:1.3em 0; border:1px solid #00348b; color:#00348b; text-decoration:none;}  
  nav ul li a::after {position:absolute; display:block; content:''; width:0.6em; height:0.6em; border-top:2px solid #00348b; border-right:2px solid #00348b; top:40%; right:1.5em; transform:rotate(45deg);}

  
  /* fakeLoader */
  .fakeLoader {position:relative; display:flex; align-items:center; justify-content:center; height:100vh; font-size:0; z-index:10000000 !important;}
  .fakeLoader .fl {position:relative; width:90%; text-align:center;}
  .fakeLoader .fl img {width:90%; max-width:520px;}
  
  
  .mv {position:relative; width:100%; height:62vw !important; min-height:400px;}
  .mv .slider {overflow:hidden; position:relative; width:100%; height:62vw !important; min-height:400px;}
  .mv .slider_item {display:flex; align-items:center; flex-wrap:wrap; width:100%; height:62vw !important; min-height:400px;}
  .mv .slider_item .img img {position:absolute; width:100%; height:62vw; min-height:400px; top:0; left:0; vertical-align:bottom; object-fit:cover; object-position:center center; z-index:-1;}
  .mv .slider_item .inner {display:flex; width:90%; margin:0 auto;}
  .mv .slider_item .inner p {margin-top:-1em; width:100%; color:#00348b; font-size:150%; font-weight:500; line-height:1.8; text-shadow:0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff; text-align:center;}
  .mv .slider_item .inner p.center {text-align:center;}
  .mv .slider_item .inner p.right {text-align:right;}
  .mv .mv_banner {position:absolute; width:90%; bottom:5%; left:5%; z-index:+10;}
 
  
  /* low_mv */
  .low_mv {margin:92px 0 0 0; background:url(../images/bg_mv.jpg) center center no-repeat; background-size:cover; color:#00348b;}
  .low_mv .inner {position:relative; display:flex; align-items:center; height:8em; padding:0 15px;}
  .low_mv .inner h1 {position:relative; display:flex; align-items:center; font-size:150%; font-weight:600; letter-spacing:0.05em;}
  .low_mv .inner h1 span {padding:0.4em 0 0 1.5em; font-family:'Lato', sans-serif; font-size:50%; font-weight:300;}
	
  main .contents,
  main .l_inner {width:90%; margin:0 auto;}
  
  /* h2 */
  main h2 {margin-top:3em; color:#00348b; font-size:140%; font-weight:500; line-height:1.2;}
  
  /* top_rnews */
  #top_rnews {padding:5em 0; background:url(../../images/top/rnews_bg.jpg) center center no-repeat; background-size:cover;}
  #top_rnews .inner {position:relative; display:flex; flex-wrap:wrap; justify-content:space-between; margin:0 auto; z-index:+1;}
  #top_rnews .inner .title {width:80%; margin:0;}
  #top_rnews .inner .title h2 {position:relative; width:calc(100% - 2em); margin:0; padding:1em 2em; background:#00348b; color:#fff; line-height:1;}
  #top_rnews .inner .title h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; right:-2em; background:linear-gradient(to top right, #00348b 48%, rgba(0,0,0,0) 52%);}
	#top_rnews .inner .title h2 span {display:inline-block;}
  #top_rnews .inner .title h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_rnews .inner .title h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
  #top_rnews .inner .news {width:90%; margin:2em auto 0 auto; font-size:95%;}
  #top_rnews .inner .news iframe {height:15em;}
  #top_rnews .bg {position:absolute; width:50%; height:12em; background:#00348b; top:0; left:0;}
  
  /* top_msg */
  #top_msg {padding:5em 0; background:url(../../images/top/msg_bg.jpg) center center no-repeat; background-size:cover;}
  #top_msg .inner {margin:0 auto;}
	#top_msg .msg_box {width:90%; margin:0 0 0 10%;}
  #top_msg h2 {position:relative; width:80%; margin:0 0 0 20%; padding:1em 2em; background:#00348b; color:#fff; line-height:1;}
  #top_msg h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; left:-2em; background:linear-gradient(to bottom right, rgba(0,0,0,0) 48%, #00348b 52%);}
	#top_msg h2 span {display:inline-block;}
  #top_msg h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_msg h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
  #top_msg .note {margin-top:3em; padding:1.5em 2em; background:rgba(255,255,255,0.8); border-left:4px solid #00348b; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  #top_msg .note span {color:#00348b; font-size:120%; font-weight:500; line-height:1.3;}
  
  /* top_srv */
  #top_srv {padding:5em 0; background:url(../../images/top/srv_bg.jpg) center center no-repeat; background-size:cover;}
  #top_srv .inner {margin:0 auto;}
  #top_srv .inner .title {width:80%; margin:0;}
  #top_srv .inner .title h2 {position:relative; margin:0; padding:1em 2em; background:#00348b; color:#fff; line-height:1;}
  #top_srv .inner .title h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; right:-2em; background:linear-gradient(to top right, #00348b 48%, rgba(0,0,0,0) 52%);}
  #top_srv .inner .title h2 span {display:inline-block;}
  #top_srv .inner .title h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_srv .inner .title h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
  #top_srv .lead {padding:0 2em; color:#00348b; font-size:105%; line-height:1.5;}
  #top_srv ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:90%; margin:0 auto; padding-top:1em;}
  #top_srv ul li {position:relative; width:100%; margin:1em 0 0 0; padding:3px; border:2px solid #00348b;}
  #top_srv ul li dl {width:100%; margin-top:10em; padding-bottom:1em; background:rgba(255,255,255,0.8);}
  #top_srv ul li dl dt {width:100%; line-height:1;}
  #top_srv ul li dl dd {padding:0.5em 1em 0 1em; font-size:90%; font-weight:400; line-height:1.7; text-align:justify; text-justify:inter-ideograph;}
  #top_srv ul li dl dd span {display:block; color:#00348b; font-size:130%; font-weight:600; text-align:center;}
  #top_srv ul li dl dd p {margin-top:0.5em;}
  #top_srv ul li .btn {width:70%; margin:1em auto 0 auto; font-size:85%; line-height:1; text-align:center;}
  #top_srv ul li .btn a {display:block; padding:0.8em 0; border:1px solid #00348b; color:#00348b; text-decoration:none;}
  #top_srv ul li .bg {position:absolute; width:calc(100% - 6px); height:calc(100% - 6px); top:3px; left:3px; z-index:-1;}
  #top_srv ul li:nth-child(1) .bg {background:url(../../images/top/srv_img02.jpg) center top no-repeat; background-size:cover;}
  #top_srv ul li:nth-child(2) .bg {background:url(../../images/top/srv_img01.jpg) center top no-repeat; background-size:cover;}
  #top_srv ul li:nth-child(3) .bg {background:url(../../images/top/srv_img03.jpg) center top no-repeat; background-size:cover;}
  #top_srv ul li:nth-child(4) .bg {background:url(../../images/top/srv_img04.jpg) center top no-repeat; background-size:cover;}
  
  /* top_news */
  #top_news {padding:0 0 6em 0; background:url(../../images/top/news_bg.jpg) center center no-repeat; background-size:cover;}
  #top_news .inner {width:90%; margin:0 auto;}
  #top_news .inner .title {position:relative; width:80%; margin:0 auto; z-index:+1;}
  #top_news .inner .title h2 {position:relative; margin:0; padding:1em 0; background:#00348b; color:#fff; line-height:1; text-align:center;}
  #top_news .inner .title h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; left:-2em; background:linear-gradient(to top right, rgba(0,0,0,0) 48%, #00348b 52%);}
  #top_news .inner .title h2::after {position:absolute; display:block; content:''; width:2em; height:100%; top:0; right:-2em; background:linear-gradient(to top left, rgba(0,0,0,0) 48%, #00348b 52%);}
	#top_news .inner .title h2 span {display:inline-block;}
  #top_news .inner .title h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_news .inner .title h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
  #top_news .inner .news {margin:-3em auto 0 auto; padding:5em 2.5em 4em 2.5em; background:rgba(255,255,255,0.8); font-size:95%;}
  #top_news .inner .news ul {width:100%;}
  #top_news .inner .news ul a {border-bottom:1px solid #101010; color:#101010; text-decoration:none;}
  #top_news .inner .news ul li {padding:1em 0; border-bottom:1px solid #7f7f7f;}
  #top_news .inner .news ul li span {display:block; padding:0.3em 0 0 0; font-size:80%;}
	
	/* ptxt */
  .ptxt {margin:1.5em auto 0 auto; font-size:90%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;} 
  
  /* area1 */
  .area1 {margin:3em auto 0 auto; padding-top:1em;}
  
  /* area2 */
  .area2 {margin:3em auto 0 auto; padding-top:1em;}
  h2 + .area2 {margin:1em auto 0 auto;}
  .area2 h2 {margin:1em 0 0 0;}
  .area2 .ptxt {width:100%; margin:0; font-size:85%;}
  .area2 .ptxt .fleft {width:60%;}
  .area2 .ptxt .fright {padding-top:1em; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;} 
  
  /* area3 */
  .area3 {margin:3em auto 0 auto;}
  h2 + .area3 {margin:1em auto 0 auto;}
  .area3 h2 {margin:1em 0 0 0;}
  .area3 .ptxt {width:100%; margin:0; padding-top:1em;}
  .area3 .ptxt .fleft {padding-top:1em; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  .area3 .ptxt .fright {width:60%;} 
  
  /* ptop */
  #ptop {position:fixed; width:40px; right:15px; bottom:15px;}
	
  /* cmn_bnr */
  #banner {display:none; width:94%; margin:0 auto; padding:2em 0;}
  #cmn_bnr {display:flex; flex-wrap:wrap; justify-content:space-between; width:100%;}
  #cmn_bnr li {width:50%;}
	
	/* low_contact */
	.low_contact {width:100%; margin:5em auto 0 auto; padding-bottom:2em; border:3px solid #00348b;}
	.low_contact .ttl {width:90%; margin:0 auto; padding:1em 0; border-bottom:3px solid #00348b; color:#00348b; font-weight:600; text-align:center;}
	.low_contact .call {margin:0.5em 0 0 0; font-family:'Lato', sans-serif; font-size:180%; font-weight:800; text-align:center;}
	.low_contact .call span {padding:0 0 0 1.4em;  background:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5IDEuMzIybDIuODQ0LTEuMzIyIDQuMDQxIDcuODg5LTIuNzI0IDEuMzQyYy0uNTM4IDEuMjU5IDIuMTU5IDYuMjg5IDMuMjk3IDYuMzcyLjA5LS4wNTggMi42NzEtMS4zMjggMi42NzEtMS4zMjhsNC4xMSA3LjkzMnMtMi43NjQgMS4zNTQtMi44NTQgMS4zOTZjLS41OTguMjczLTEuMjE1LjM5OS0xLjg0Mi4zOTctNS42NDktLjAxOS0xMi4wODYtMTAuNDMtMTIuMTMzLTE3LjMzLS4wMTYtMi40MDcuNzQ1LTQuMzg3IDIuNTktNS4zNDh6bTEuOTMgMS4yNzRsLTEuMDIzLjUwNGMtNS4yOTQgMi43NjIgNC4xNzcgMjEuMTg1IDkuNjQ4IDE4LjY4NmwuOTcyLS40NzQtMi4yNzEtNC4zODMtMS4wMjYuNTAxYy0zLjE2MyAxLjU0Ny04LjI2Mi04LjIxOS01LjA1NS05LjkzOGwxLjAwNy0uNDk4LTIuMjUyLTQuMzk4em0xNS40OCAxNC40MDRoLTF2LTEzaDF2MTN6bS0yLTJoLTF2LTloMXY5em00LTFoLTF2LTdoMXY3em0tNi0xaC0xdi01aDF2NXptLTItMWgtMXYtM2gxdjN6bTEwIDBoLTF2LTNoMXYzem0tMTItMWgtMXYtMWgxdjF6Ii8+PC9zdmc+') left center no-repeat; background-size:auto 1em;}
	.low_contact .date {margin:0.5em 0 0 0; font-size:80%; font-weight:600; text-align:center;}
	.low_contact .btn {margin:1.5em 0 0 0; font-size:90%; font-weight:600; text-align:center;}
	.low_contact .btn a {position:relative; padding:0.3em 3em 0.4em 3em; border:2px solid #00348b; border-radius:3px; color:#00348b; text-decoration:none;}
	.low_contact .btn a::after {position:absolute; display:block; content:''; width:0.4em; height:0.4em; border:1px solid #00348b; border-bottom:0; border-left:0; right:1em; top:42%; transform:rotate(45deg);}
  
  /* cmn_contact */
  #cmn_contact {width:90%; margin:12% auto 0 auto;}
  #cmn_contact a {display:block; width:90%; margin:0 auto;}
  
  /* footer */
  footer {padding:1em 0 2em 0; background:#00348b;}
  footer .inner {width:90%; margin:0 auto; color:#fff;}
  footer .inner ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:100%; font-size:90%; text-align:center; line-height:1;}
  footer .inner ul li {width:100%; margin:5px 0 0 0;}
  footer .inner ul a {display:block; padding:0.8em 1em; border:1px solid #fff; color:#fff; text-decoration:none;}
  footer .inner .logo {width:220px; margin:3em auto 0 auto;}
  footer .inner p {margin:3em 0 0 0; font-size:60%; font-weight:400; text-align:center; letter-spacing:0.05em;}

}

@media (orientation:landscape) and (max-width:900px){  
  .mv {height:20em !important;}
  .mv .slider {height:20em !important;}
  .mv .slider_item {height:20em !important;}
  .mv .mv_banner {bottom:1em !important;}
  .mv .mv_banner #cmn_bnr li {width:calc(100% / 3);}
}



/*********************************
 * 901～
 *********************************/

@media screen and (min-width:901px) {
  body {width:100%; background:#fff; font-size:18px;}
  a {text-decoration:none;}
  a img {transition:opacity 0.2s ease-in-out; backface-visibility:hidden; -webkit-backface-visibility:hidden;}
  a img:hover {opacity:0.8; cursor:pointer;}
  img {width:100%; height:auto;}
  p {margin-top:1em; text-align:justify; text-justify:inter-ideograph;}
  .sp {display:none;}  
  .wrapper {background:#fff;} 
  
  /* header */
  header {position:fixed; top:0; left:0; width:100%; font-size:18px; z-index:100;}
  header .inner {display:flex; align-items:center; justify-content:space-between; width:calc(100% - 100px); height:80px; margin:0 auto; padding:0 20px 0 30px; background:rgba(255,255,255,0.9);}
  header .h_left {display:flex; align-items:center;}
  header .h_left .logo {width:90px;}
  header .h_left h1 {padding-left:1.5em; font-size:100%;}
  header .h_in {display:flex; align-items:center; justify-content:space-between;}
  header .h_in dl.tel {margin-right:2em; padding-left:1em; border-left:4px solid #00348b; color:#00348b; font-size:65%; line-height:1;}
  header .h_in dl.tel dt {padding-bottom:0.2em; font-size:200%; font-weight:700; letter-spacing:0.05em;}
  header .h_in dl.tel dt a {color:#00348b; pointer-events:none;}
  header .h_in dl.tel dd {text-align:center;}
  header .h_in .contact {margin-right:2em; font-size:75%;}
  header .h_in .contact a {display:block; padding:0.8em 2em; border:2px solid #00348b; color:#00348b; letter-spacing:0.05em; line-height:1; transition:0.3s;}
  header .h_in .contact a:hover {background:#00348b; color:#fff;}
  header .h_in .gnavbtn  {position:relative; width:60px; height:60px; cursor:pointer; z-index:11;}
  header .h_in .gnavbtn span {position:relative; display:block; width:32px; height:3px; left:12px; background:#282728; transition:0.3s;}
  header .h_in .gnavbtn span:nth-child(1) {top:18px;}
  header .h_in .gnavbtn span:nth-child(2) {top:26px;}
  header .h_in .gnavbtn span:nth-child(3) {top:34px;}
  
  /* nav */
  nav {position:fixed; display:none; overflow-y:auto; width:100%; height:100%; top:0; left:0; background:#fff; z-index:30;}
  nav ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:94%; margin:120px auto 0 auto; font-size:105%; font-weight:500;}
  nav ul li {width:49%; margin:0 0 0.8em 0; text-align:center; letter-spacing:0.1em;}
  nav ul li a {display:block; position:relative; padding:1em 0; border:2px solid #00348b; color:#00348b; transition:0.3s;}
  nav ul li a:hover {background:#00348b; color:#fff;}
  nav ul li a::after {position:absolute; display:block; content:''; width:0.7em; height:0.7em; border-top:1px solid #00348b; border-right:1px solid #00348b; top:40%; right:2em; transform:rotate(45deg);}
  nav ul li a:hover::after {border-top:1px solid #fff; border-right:1px solid #fff;}
  
  /* fakeLoader */
  .fakeLoader {display:flex; align-items:center; justify-content:center; font-size:0;}
  .fakeLoader .fl {position:relative; width:94%; max-width:1300px; text-align:center;}
  .fakeLoader .fl img {width:calc(75% * 0.7); max-width:520px;}
  
  /* mv */
  .mv {position:relative; width:100%; height:62vw !important; min-height:30em !important;}
  .mv .slider {overflow:hidden; position:relative; width:100%; height:62vw; min-height:30em;}
  .mv .slider_item {display:flex; align-items:center; flex-wrap:wrap; width:100%; height:62vw; min-height:30em;}
  .mv .slider_item .inner {display:flex; align-items:center; flex-wrap:wrap; width:94%; max-width:1300px; height:62vw; min-height:30em; margin:0 auto;}
  .mv .slider_item .inner .img img {position:absolute; width:100%; height:62vw; min-height:30em; top:0; left:0; vertical-align:bottom; object-fit:cover; z-index:-1;}
  .mv .slider_item .inner p {width:100%; margin-top:0; color:#00348b; font-size:250%; font-weight:500; text-shadow:0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff; text-align:center;}
  .mv .slider_item .inner p.center {text-align:center;}
  .mv .slider_item .inner p.right {text-align:right;}
 
  .mv .mv_banner {position:absolute; width:100%; bottom:3em; left:0; z-index:+10;}
  
  /* low_mv */
  .low_mv {margin:80px 0 0 0; background:url(../images/bg_mv.jpg) center center no-repeat; background-size:cover; color:#00348b;}
  .low_mv .inner {position:relative; display:flex; align-items:center; height:10em; padding:0 0 0 80px;}
  .low_mv .inner h1 {position:relative; display:flex; align-items:center; font-size:160%; font-weight:600; letter-spacing:0.1em;}
  .low_mv .inner h1 span {padding:0.4em 0 0 1.5em; font-family:'Lato', sans-serif; font-size:60%; font-weight:300;}
  
	 main .contents,
	 main .l_inner {width:94%; max-width:1200px; margin:0 auto;}
	
  /* h2 */
  main h2 {margin-top:3em; color:#00348b; font-size:150%; font-weight:600; line-height:1.3;}
  
  /* top_rnews */
  #top_rnews {padding:6em 0 8em 0; background:url(../../images/top/rnews_bg.jpg) center center no-repeat; background-size:cover;}
  #top_rnews .inner {position:relative; display:flex; justify-content:space-between; width:94%; max-width:1200px; margin:0 auto; z-index:+1;}
  #top_rnews .inner .title {width:45%; margin:0; padding:0 4% 0 0;}
  #top_rnews .inner .title h2 {position:relative; width:calc(100% - 2em); margin:0; padding:2em; background:#00348b; font-size:170%; font-weight:500; color:#fff; line-height:1;}
  #top_rnews .inner .title h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; right:-2em; background:linear-gradient(to top right, #00348b 48%, rgba(0,0,0,0) 52%);}
	 #top_rnews .inner .title h2 span {display:inline-block;}
  #top_rnews .inner .title h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_rnews .inner .title h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
  #top_rnews .inner .news {width:54%; margin-top:3em; font-size:95%;}
  #top_rnews .inner .news iframe {height:300px;}
  #top_rnews .inner .news ul {width:100%;}
  #top_rnews .inner .news ul a {border-bottom:1px solid transparent; color:#101010; transition:0.3s;}
  #top_rnews .inner .news ul a:hover {border-bottom:1px solid #101010;}
  #top_rnews .inner .news ul li {padding:1.5em; border-bottom:1px solid #7f7f7f;}
  #top_rnews .inner .news ul li span.en {display:block; padding:0.3em 0 0 0;}
  #top_rnews .bg {position:absolute; width:50%; height:12em; background:#00348b; top:0; left:0;}
  
  /* top_msg */
  #top_msg {padding:6em 0; background:url(../../images/top/msg_bg.jpg) center center no-repeat; background-size:cover;}
  #top_msg .inner {width:94%; max-width:1200px; margin:0 auto;}
	#top_msg .msg_box {width:70%; margin:0 0 0 30%;}
  #top_msg h2 {position:relative; width:70%; margin-left:30%; padding:2em; background:#00348b; color:#fff; font-size:170%; font-weight:500; line-height:1;}
  #top_msg h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; left:-2em; background:linear-gradient(to bottom right, rgba(0,0,0,0) 48%, #00348b 52%);}
	#top_msg h2 span {display:inline-block;}
  #top_msg h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_msg h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
  #top_msg .note {margin-top:4em; padding:1.5em 2em; background:rgba(255,255,255,0.8); border-left:4px solid #00348b; line-height:2; text-align:justify; text-justify:inter-ideograph;}
	 #top_msg .note span {color:#00348b; font-size:150%; font-weight:500; line-height:1.3;}
  
  /* top_srv */
  #top_srv {padding:6em 0; background:url(../../images/top/srv_bg.jpg) center center no-repeat; background-size:cover;}
  #top_srv .inner {display:flex; align-items:center; justify-content:space-between; width:94%; max-width:1200px; margin:0 auto;}
  #top_srv .inner .title {width:46%; margin:0;}
  #top_srv .inner .title h2 {position:relative; width:calc(100% - 2em); margin:0; padding:2em; background:#00348b; color:#fff; font-size:170%; font-weight:500; line-height:1;}
  #top_srv .inner .title h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; right:-2em; background:linear-gradient(to top right, #00348b 48%, rgba(0,0,0,0) 52%);}
	#top_srv .inner .title h2 span {display:inline-block;}
  #top_srv .inner .title h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_srv .inner .title h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
  #top_srv .lead {margin:0; padding:0 0 0 1em; color:#00348b; font-size:110%; line-height:1.5; text-align:right;}
  #top_srv ul {display:flex; justify-content:space-between; width:94%; max-width:1200px; margin:5em auto 0 auto;}
  #top_srv ul li {position:relative; width:23.5%; padding:3px; border:2px solid #00348b;}
  #top_srv ul li dl {width:100%; margin-top:10em; background:rgba(255,255,255,0.8);}
  #top_srv ul li dl dt {width:100%; line-height:1;}
  #top_srv ul li dl dd {padding:0.5em 1em 1em 1em; font-size:90%; font-weight:400; line-height:1.7; text-align:justify; text-justify:inter-ideograph;}
  #top_srv ul li dl dd span {display:block; color:#00348b; font-size:130%; font-weight:600; text-align:center;}
  #top_srv ul li dl dd p {height:9em; margin-top:0.5em;}
  #top_srv ul li .btn {width:9em; height:auto; margin:2em auto 0 auto; font-size:80%; line-height:1; text-align:center;}
  #top_srv ul li .btn a {display:block; padding:0.7em 0; border:1px solid #00348b; color:#00348b; transition:0.3s;}
  #top_srv ul li .btn a:hover {opacity:0.8;}
  #top_srv ul li .bg {position:absolute; width:calc(100% - 6px); height:calc(100% - 6px); top:3px; left:3px; z-index:-1;}
  #top_srv ul li:nth-child(1) .bg {background:url(../../images/top/srv_img02.jpg) center top no-repeat; background-size:cover;}
  #top_srv ul li:nth-child(2) .bg {background:url(../../images/top/srv_img01.jpg) center top no-repeat; background-size:cover;}
  #top_srv ul li:nth-child(3) .bg {background:url(../../images/top/srv_img03.jpg) center top no-repeat; background-size:cover;}
  #top_srv ul li:nth-child(4) .bg {background:url(../../images/top/srv_img04.jpg) center top no-repeat; background-size:cover;}
  
  /* top_news */
  #top_news {padding:0 0 6em 0; background:url(../../images/top/news_bg.jpg) center center no-repeat; background-size:cover;}
  #top_news .inner {width:94%; max-width:1200px; margin:0 auto;}
  #top_news .inner .title {position:relative; width:50%; margin:0 auto; z-index:+1;}
  #top_news .inner .title h2 {position:relative; margin:0; padding:2em; background:#00348b; color:#fff; font-size:170%; font-weight:500; line-height:1; text-align:center;}
  #top_news .inner .title h2::before {position:absolute; display:block; content:''; width:2em; height:100%; top:0; left:-2em; background:linear-gradient(to top right, rgba(0,0,0,0) 48%, #00348b 52%);}
  #top_news .inner .title h2::after {position:absolute; display:block; content:''; width:2em; height:100%; top:0; right:-2em; background:linear-gradient(to top left, rgba(0,0,0,0) 48%, #00348b 52%);}
	 #top_news .inner .title h2 span {display:inline-block;}
  #top_news .inner .title h2 span.line {padding-bottom:0.4em; border-bottom:1px solid #fff;}
  #top_news .inner .title h2 span.en {display:block; width:100%; padding:1em 0 0 0; font-size:40%; letter-spacing:0.1em;}
	
	
  #top_news .inner .news {width:79%; margin:-3em auto 0 auto; padding:5em 2.5em; background:rgba(255,255,255,0.8); font-size:95%;}
  #top_news .inner .news ul {width:100%;}
  #top_news .inner .news ul a {border-bottom:1px solid transparent; color:#101010; transition:0.3s;}
  #top_news .inner .news ul a:hover {border-bottom:1px solid #101010;}
  #top_news .inner .news ul li {padding:1em 0; border-bottom:1px solid #7f7f7f;}
  #top_news .inner .news ul li span {display:block; padding:0.3em 0 0 0; font-size:80%;}
	
	/* ptxt */
  .ptxt {margin:1.5em auto 0 auto; font-size:95%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  
  /* area1 */
  .area1 {margin:4em auto 0 auto;}
  
  /* area2 */
  .area2 {margin:4em auto 0 auto;}
  h2 + .area2 {margin:1.5em auto 0 auto;}
  .area2 h2 {margin:1.5em 0 0 0;}
  .area2 .ptxt {display:flex; position:relative; justify-content:space-between; width:100%; margin:0;}
  .area2 .ptxt .fleft {width:30%; padding-top:0.3em;}
  .area2 .ptxt .fright {width:65%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  
  /* area3 */
  .area3 {margin:1.5em auto 0 auto;}
  h2 + .area3 {margin:1.5em auto 0 auto;}
  .area3 .ptxt {display:flex; position:relative; flex-direction:row-reverse; justify-content:space-between; width:100%; margin:0;}
  .area3 .ptxt .fleft {width:65%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  .area3 .ptxt .fright {width:30%; padding-top:0.6em;} 
  
  /* ptop */
  #ptop {position:fixed; width:40px; right:50px; bottom:50px;}
	
	/* cmn_bnr */
  #banner {display:none; width:100%; padding:5em 0 3em 0;}
	#cmn_bnr {display:flex; justify-content:center; width:100%; margin:0 auto;}
	#cmn_bnr li {width:calc(100% / 3); max-width:320px; margin:0;}
	
	/* low_contact */
	.low_contact {width:70%; margin:5em auto 0 auto; padding-bottom:2em; border:3px solid #00348b;}
	.low_contact .ttl {width:80%; margin:0 auto; padding:1em 0; border-bottom:3px solid #00348b; color:#00348b; font-weight:600; text-align:center;}
	.low_contact .call {margin:0.5em 0 0 0; font-family:'Lato', sans-serif; font-size:180%; font-weight:800; text-align:center;}
	.low_contact .call span {padding:0 0 0 1.4em;  background:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5IDEuMzIybDIuODQ0LTEuMzIyIDQuMDQxIDcuODg5LTIuNzI0IDEuMzQyYy0uNTM4IDEuMjU5IDIuMTU5IDYuMjg5IDMuMjk3IDYuMzcyLjA5LS4wNTggMi42NzEtMS4zMjggMi42NzEtMS4zMjhsNC4xMSA3LjkzMnMtMi43NjQgMS4zNTQtMi44NTQgMS4zOTZjLS41OTguMjczLTEuMjE1LjM5OS0xLjg0Mi4zOTctNS42NDktLjAxOS0xMi4wODYtMTAuNDMtMTIuMTMzLTE3LjMzLS4wMTYtMi40MDcuNzQ1LTQuMzg3IDIuNTktNS4zNDh6bTEuOTMgMS4yNzRsLTEuMDIzLjUwNGMtNS4yOTQgMi43NjIgNC4xNzcgMjEuMTg1IDkuNjQ4IDE4LjY4NmwuOTcyLS40NzQtMi4yNzEtNC4zODMtMS4wMjYuNTAxYy0zLjE2MyAxLjU0Ny04LjI2Mi04LjIxOS01LjA1NS05LjkzOGwxLjAwNy0uNDk4LTIuMjUyLTQuMzk4em0xNS40OCAxNC40MDRoLTF2LTEzaDF2MTN6bS0yLTJoLTF2LTloMXY5em00LTFoLTF2LTdoMXY3em0tNi0xaC0xdi01aDF2NXptLTItMWgtMXYtM2gxdjN6bTEwIDBoLTF2LTNoMXYzem0tMTItMWgtMXYtMWgxdjF6Ii8+PC9zdmc+') left center no-repeat; background-size:auto 1em;}
	.low_contact .date {margin:0.5em 0 0 0; font-size:80%; font-weight:600; text-align:center;}
	.low_contact .btn {margin:1.5em 0 0 0; font-size:90%; font-weight:600; text-align:center;}
	.low_contact .btn a {position:relative; padding:0.3em 3em 0.4em 3em; border:2px solid #00348b; border-radius:3px; color:#00348b; transition:0.3s;}
	.low_contact .btn a:hover {background:#00348b; color:#fff;}
	.low_contact .btn a::after {position:absolute; display:block; content:''; width:0.4em; height:0.4em; border:1px solid #00348b; border-bottom:0; border-left:0; right:1em; top:42%; transform:rotate(45deg);}
	.low_contact .btn a:hover::after {border:1px solid #fff; border-bottom:0; border-left:0;}
  
  /* cmn_contact */
  #cmn_contact {width:94%; max-width:1200px; margin:9% auto 0 auto;}
  #cmn_contact a {display:block; width:64%; max-width:760px; margin:0 auto; transition:0.3s;}
  #cmn_contact a:hover {opacity:0.8;}
  
  /* footer */
  footer {padding:0 0 2em 0; background:#00348b;}
  footer .inner {width:94%; max-width:1200px; margin:0 auto; color:#fff;}
  footer .inner ul {display:flex; flex-wrap:wrap; width:100%; font-size:80%; text-align:center; line-height:1;}
  footer .inner ul li {width:calc((100% - 10px) /3 ); margin:5px 5px 0 0;}
  footer .inner ul li:nth-child(3n) {margin-right: 0;}
  footer .inner ul a {display:block; padding:0.5em 1em; border:1px solid #fff; color:#fff; transition:0.3s;}
  footer .inner ul a:hover {opacity:0.8;}
  footer .inner .logo {width:300px; margin:5em auto 0 auto;}
  footer .inner p {margin:5em 0 0 0; font-size:65%; font-weight:400; text-align:center; letter-spacing:0.05em;}

}

@media screen and (min-width:901px) and (max-width:1240px) {
  
  body {font-size:1.5vw;}
  
  .mv .slider_item .inner p {font-size:220%;}

}

/* animation */
@keyframes fadeUp {
  0% {
    opacity:0;
    transform:translate(0, 40px);
  }
  100% {
    opacity:1;
    transform:translate(0, 0);
  }
}

.fadeUp {opacity:0;}
.fadeUp_active {
  animation-name:fadeUp;
  animation-timing-function:ease-out;
  animation-fill-mode:forwards;
  animation-direction:alternate;
  animation-duration:0.8s;
  transition-delay:0.3s;
}


