@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');

* {margin:0; padding:0; box-sizing:border-box;}
body {color:#010101; font-family:'Noto Sans JP', sans-serif;}
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;}

.red {color:#7f1b31;}
.mT05em {margin-top:0.5em !important;}
.mT1em {margin-top:1em !important;}
.mT15em {margin-top:1.5em !important;}
.mT2em {margin-top:2em !important;}

ul.l_1em {}
ul.l_1em li {padding-left:1em; text-indent:-1em;}
ul.l_15em {}
ul.l_15em li {padding-left:1.5em; text-indent:-1.5em;}
ul.l_2em {}
ul.l_2em li {padding-left:1.85em; text-indent:-1.85em;}

.slider {opacity:0; transition:opacity 0.3s linear;}
.slider.slick-initialized{opacity:1;}

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

@media screen and (max-width:900px){
	
  body {overflow-x:hidden; -webkit-text-size-adjust:100%; font-size:3.6vw;}
  :not(.area1):not(.media_img) > img {width:100%; height:auto;}
  .area1 > img,
	.ptxt > img {width:auto; max-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:70px; background:#7f1b31; font-size:18px; z-index:5;}
  header .inner {display:flex; align-items:center; justify-content:space-between; width:100%; padding:15px;}
  header .logo {font-size:0;}
  header .logo img {width:90% !important; max-width:318px;}
  header .h_in {display:flex; align-items:flex-end; justify-content:space-between;}
  header .h_in .contact {margin-right:10px;}
  header .h_in .contact a {display:block; width:40px; height:40px; background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMCAzdjE4aDI0di0xOGgtMjR6bTYuNjIzIDcuOTI5bC00LjYyMyA1LjcxMnYtOS40NThsNC42MjMgMy43NDZ6bS00LjE0MS01LjkyOWgxOS4wMzVsLTkuNTE3IDcuNzEzLTkuNTE4LTcuNzEzem01LjY5NCA3LjE4OGwzLjgyNCAzLjA5OSAzLjgzLTMuMTA0IDUuNjEyIDYuODE3aC0xOC43NzlsNS41MTMtNi44MTJ6bTkuMjA4LTEuMjY0bDQuNjE2LTMuNzQxdjkuMzQ4bC00LjYxNi01LjYwN3oiIGZpbGw9IiNmZmYiLz48L3N2Zz4=') center center no-repeat; background-size:auto 20px; border:1px solid #fff; border-radius:3px;}
  header .h_in .gnavbtn  {position:relative; width:40px; height:40px; border:1px solid #fff; border-radius:3px; cursor:pointer; z-index:11;}
  header .h_in .gnavbtn span {position:relative; display:block; width:23px; height:2px; left:8px; background:#fff; transition:0.3s;}
  header .h_in .gnavbtn span:nth-child(1) {top:10px;}
  header .h_in .gnavbtn span:nth-child(2) {top:16px;}
  header .h_in .gnavbtn span:nth-child(3) {top:22px;}
  
  /* nav */
  nav {overflow-y:auto; position:fixed; display:none; width:100%; height:100%; padding:0 0 4em 0; top:0; left:0; background:#7f1b31; z-index:2;}
  nav ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:80%; margin:90px auto 0 auto; font-size:80%; font-weight:500;}
  nav ul li {width:100%; padding:0.5em 0 0 0; text-align:center; letter-spacing:0.1em;}
  nav ul li a {display:block; position:relative; padding:1em 0; border:1px solid #fff; border-radius:3px; color:#fff; text-decoration:none;}
  nav ul li a::after {position:absolute; display:block; content:''; width:0.5em; height:0.5em; top:41%; right:2em; border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg);}
  /*nav ul li:nth-child(2) a,
  nav ul li:nth-child(3) a,
  nav ul li:nth-child(4) a,
  nav ul li:nth-child(5) a {pointer-events:none;}
  nav ul li:nth-child(2) a::after,
  nav ul li:nth-child(3) a::after,
  nav ul li:nth-child(4) a::after,
  nav ul li:nth-child(5) a::after {transform:rotate(135deg);}*/
  nav ul li a:empty {display:none;}
  
  nav ul li .megamenu_profile {padding:0.2em 0 0.8em 0;}
  nav ul li .megamenu_profile ul {width:100%; margin-top:0; font-weight:400;}
  nav ul li .megamenu_profile ul li {margin:0; padding:0.2em 0 0 0; text-align:left;}
  nav ul li .megamenu_profile ul li a {padding:1em 0 1em 1em; border:0; border-bottom:1px dotted #fff; border-radius:0; pointer-events:auto;}
  nav ul li .megamenu_profile ul li a::after {display:none;}
  
  nav ul li .megamenu_service {padding:0.2em 0 0.8em 0;}
  nav ul li .megamenu_service ul {width:100%; margin-top:0; font-weight:400;}
  nav ul li .megamenu_service ul li {margin:0; padding:0.2em 0 0 0; text-align:left;}
  nav ul li .megamenu_service ul li a {padding:1em 0 1em 1em; border:0; border-bottom:1px dotted #fff; border-radius:0; pointer-events:auto;}
  nav ul li .megamenu_service ul li a::after {display:none;}
  
  nav ul li .megamenu_fee {padding:0.2em 0 0.8em 0;}
  nav ul li .megamenu_fee ul {width:100%; margin-top:0; font-weight:400;}
  nav ul li .megamenu_fee ul li {margin:0; padding:0.2em 0 0 0; text-align:left;}
  nav ul li .megamenu_fee ul li a {padding:1em 0 1em 1em; border:0; border-bottom:1px dotted #fff; border-radius:0; pointer-events:auto;}
  nav ul li .megamenu_fee ul li a::after {display:none;}
  
  nav ul li .megamenu_sodan {padding:0.2em 0 0.8em 0;}
  nav ul li .megamenu_sodan ul {width:100%; margin-top:0; font-weight:400;}
  nav ul li .megamenu_sodan ul li {margin:0; padding:0.2em 0 0 0; text-align:left;}
  nav ul li .megamenu_sodan ul li a {padding:1em 0 1em 1em; border:0; border-bottom:1px dotted #fff; border-radius:0; pointer-events:auto;}
  nav ul li .megamenu_sodan ul li a::after {display:none;}
  
  /* fakeLoader */
  .fakeLoader {display:flex; align-items:center; justify-content:center; height:100vh; font-size:0;}
  .fakeLoader .fl {position:relative; width:90%; text-align:center;}
  .fakeLoader .fl img {width:80%; max-width:534px;}  
  
  .mv {width:100%; height:calc(43.4vw - 70px) !important;}
  .mv .slider {overflow:hidden; position:relative; width:100%; height:calc(43.4vw - 70px); margin-top:70px;}
  .mv .slider_item {width:100%; height:calc(43.4vw - 70px);} 
  .mv .slider_item .img img {position:absolute; width:100%; height:calc(43.4vw - 70px); top:0; left:0; vertical-align:bottom; object-fit:cover; object-position:center center; z-index:-1;}
  .mv .slider_item:nth-child(1) .img img {object-position:65% center;}
  .mv .slider_item:nth-child(2) .img img {object-position:54% center;}
  .mv .slider_item .inner {display:flex; align-items:center; width:90%; height:100%; margin:0 auto;}
  .mv .slider_item .inner p {width:100%; margin-top:0; color:#0F4C80; font-size:120%; font-weight:700; line-height:1.6; 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 #0F4C80; text-align:center;}
  .mv .slider_item .inner p span {color:#691224; font-size:135%; font-weight:800;}
  .mv .slider_item .inner p img {padding-top:1em;}
  .mv .slider_item .inner p.center {text-align:center;}
  .mv .slider_item .inner p.right {text-align:right;}
  
  /* low_mv */
  .low_mv {margin:70px 0 0 0; background:url(../images/bg_mv.jpg) left top no-repeat; background-size:150% auto; color:#7f1b31;}
  .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 {padding-bottom:4em;}
  main .contents,
  main .l_inner {width:90%; margin:0 auto;}
  
  /* h2 */
  main h2 {margin-top:3em; color:#7f1b31; font-size:145%; font-weight:700; line-height:1.3;}
  
  /* top_rnews */
  #top_rnews {padding:4em 0; background:url(../../images/top/rnews_bg.jpg) 60% top no-repeat; background-size:cover;}
  #top_rnews .inner {width:90%; margin:0 auto; z-index:+1;}
  #top_rnews .inner .title {}
  #top_rnews .inner .title h2 {margin:0; line-height:1;}
  #top_rnews .inner .news {margin:2em 0 0 0; font-size:95%;}
  #top_rnews .inner .news iframe {height:13em}
  
  /* top_msg */
  #top_msg {margin:4em 0 0 0;}
  #top_msg .inner {width:90%; margin:0 auto;}
  #top_msg .inner .photo {position:relative; display:flex; justify-content:flex-end; width:100%;}
  #top_msg .inner .photo img {width:70%;}	
  #top_msg .inner .photo h2 {position:absolute; display:flex; align-items:center; flex-wrap:wrap; justify-content:center; width:7.5em; height:7.5em; left:0; top:0; margin:0; background:#7f1b31; color:#fff; line-height:1;}
  #top_msg .inner .photo h2 dl {text-align:center;}
  #top_msg .inner .photo h2 dl dt {padding-bottom:0.8em; font-size:30%; font-weight:400; letter-spacing:0.1em;}
  #top_msg .inner .photo h2 dl dd {font-size:90%;}
  #top_msg .inner .note {margin:2em 0 0 0; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  
  /* top_srv */
  #top_srv {margin:4em 0 0 0; padding:3em 0 4em 0; background:#7f1b31;}
  #top_srv .inner {width:90%;margin:0 auto;}
  #top_srv h2 {display:flex; align-items:center; position:relative; width:100%; margin:0; color:#fff;}
  #top_srv .lead {margin:1em 0 0 0; color:#fff; font-size:85%; line-height:1.8;}
  #top_srv ul {width:100%; margin:0; padding:1em 0 0 0;}
  #top_srv ul li {margin-top:1em; padding:1.5em; background:#fff;}
  #top_srv ul li dl {}
  #top_srv ul li dl dt {padding-left:1.4em; background:url(../../images/top/srv_icon.png) left 0.25em no-repeat; background-size:auto 1em; color:#7f1b31; font-size:120%; font-weight:700;}
  #top_srv ul li dl dd {padding:0.4em 0 0 0; font-size:90%; font-weight:500; line-height:1.7; text-align:justify; text-justify:inter-ideograph;}
  #top_srv a {color:#010101; text-decoration:none;}
  #top_srv a dd {text-decoration:underline;}
  
  /* top_news */
  #top_news {margin:3em 0 0 0;}
  #top_news .inner {width:94%; max-width:1200px; margin:0 auto;}
  #top_news .inner .title {}
  #top_news .inner .title h2 {margin:0;}
  #top_news .inner .news {margin-top:1em; font-size:95%;}
  #top_news .inner .news ul {width:100%; border-top:1px solid #eee;}
  #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 {position:relative; padding:1em 0 1em 8em; border-bottom:1px solid #eee;}
  #top_news .inner .news ul li span {position:absolute; display:inline-block; top:1.2em; left:0; font-family:'Lato', sans-serif;}
	
	/* ptxt */
  .ptxt {margin:1.5em auto 0 auto; font-size:90%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;} 
  .ptxt a {border-bottom:1px solid #3f91d6; color:#3f91d6;}
  
  /* 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 {}
  .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 {font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  .area3 .ptxt .fright {padding-top:1em;} 
  
  /* ptop */
  #ptop {position:fixed; width:68px; right:15px; bottom:15px;}
	
	  /* cmn_bnr */
  #cmn_bnr {margin:4em 0 0 0; padding:1.5em 0 1em 0; background:#691224;}
  #cmn_bnr ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:90%; margin:0 auto;}
  #cmn_bnr ul li {width:48.5%; margin:0 0 0.5em 0;}
  #cmn_bnr ul li:empty {display:none;}
  #cmn_bnr ul a {border:0;}
	
	/* low_contact */
	.low_contact {width:100%; margin:5em auto 0 auto; padding-bottom:2em; border:3px solid #7f1b31;}
	.low_contact .ttl {width:90%; margin:0 auto; padding:1em 0; border-bottom:3px solid #7f1b31; color:#7f1b31; 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 .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; background:#7f1b31; border-radius:3px; color:#fff; text-decoration:none;}
	.low_contact .btn a::after {position:absolute; display:block; content:''; width:0.4em; height:0.4em; border:1px solid #fff; border-bottom:0; border-left:0; right:1em; top:42%; transform:rotate(45deg);}
  
  /* 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 {margin:0; padding:1.5em 0 3em 0; background:#7f1b31;}
  footer .inner {display:flex; flex-wrap:wrap; flex-direction:column-reverse; justify-content:space-between; width:90%; margin:0 auto; color:#fff;}
  footer .inner ul {display:flex; flex-wrap:wrap; justify-content:space-between; font-size:85%;}
  footer .inner ul a {border-bottom:1px solid transparent; color:#fff; text-decoration:none;}
  footer .inner ul li {width:50%; margin:1em 0 0 0; padding:0.2em 0;}
  footer .inner .logo {margin:3em 0 0 0;}
  footer .inner .logo img {width:180px;}
  footer .inner p {margin:1em 0 0 0; font-family:'Lato', sans-serif; font-size:60%; font-weight:400; letter-spacing:0.05em;}

}



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

@media screen and (min-width:901px) {
  body {overflow-x:hidden; width:100%; 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;}
  :not(.area1):not(.media_img) > img {width:100%; height:auto;}
  .area1 > img,
	.ptxt > img {width:auto; max-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%; height:96px; background:#7f1b31; z-index:5;}
  header .inner {display:flex; align-items:center; justify-content:space-between; width:100%; height:96px; padding:0 30px;}
  header .logo {width:25%; max-width:318px;}
  header .h_in {display:flex; align-items:flex-end; justify-content:space-between;}
  header .h_in .contact {font-size:70%;}
  header .h_in .contact a {display:block; padding:0.7em 2em; border:1px solid #fff; border-radius:4px; color:#fff; letter-spacing:0.05em; transition:0.3s;}
  header .h_in .contact a:hover {opacity:0.8;}
  header .h_in .contact span {padding:0 0 0 1.6em; background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMCAzdjE4aDI0di0xOGgtMjR6bTYuNjIzIDcuOTI5bC00LjYyMyA1LjcxMnYtOS40NThsNC42MjMgMy43NDZ6bS00LjE0MS01LjkyOWgxOS4wMzVsLTkuNTE3IDcuNzEzLTkuNTE4LTcuNzEzem01LjY5NCA3LjE4OGwzLjgyNCAzLjA5OSAzLjgzLTMuMTA0IDUuNjEyIDYuODE3aC0xOC43NzlsNS41MTMtNi44MTJ6bTkuMjA4LTEuMjY0bDQuNjE2LTMuNzQxdjkuMzQ4bC00LjYxNi01LjYwN3oiIGZpbGw9IiNmZmYiLz48L3N2Zz4=') left center no-repeat; background-size:auto 1em;}
	
  /* nav */
  nav {display:block !important; padding-right:1em;}
  nav ul {display:flex; align-items:center; justify-content:space-between; font-size:80%; font-weight:500;}
  nav ul li {position:relative; margin-right:1.6em; padding:0.5em 0; letter-spacing:0.1em;}
  nav ul li a {display:block; position:relative; border-bottom:1px solid rgba(0,0,0,0); color:#fff; transition:0.3s;}
  nav ul li a:hover {border-bottom:1px solid #fff;}
  /*nav ul li:nth-child(2) a,
  nav ul li:nth-child(3) a,
  nav ul li:nth-child(4) a,
  nav ul li:nth-child(5) a {pointer-events:none;}*/
  nav ul li a:empty {display:none;}
  
  /*nav ul li .megamenu_profile {display:none; position:absolute; width:16em; top:2.5em; left:0; z-index:+1; background:#fff; transition:0.3s; border:3px solid #7f1b31; border-radius:4px;}
  nav ul li:hover .megamenu_profile {display:block;}
  nav ul li .megamenu_profile ul {display:block; padding:0.5em 1.8em; font-size:90%;}
  nav ul li .megamenu_profile ul li {margin:0; padding:0.8em 0; border-bottom:1px dotted #7f1b31;}
  nav ul li .megamenu_profile ul li:last-child {border:0;}
  nav ul li .megamenu_profile ul li a {display:inline-block; border-bottom:1px solid #fff; color:#7f1b31; pointer-events:auto;}
  nav ul li .megamenu_profile ul li a:hover {border-bottom:1px solid #7f1b31;}
  
  nav ul li .megamenu_service {display:none; position:absolute; width:16em; top:2.5em; left:0; z-index:+1; background:#fff; transition:0.3s; border:3px solid #7f1b31; border-radius:4px;}
  nav ul li:hover .megamenu_service {display:block;}
  nav ul li .megamenu_service ul {display:block; padding:0.5em 1.8em; font-size:90%;}
  nav ul li .megamenu_service ul li {margin:0; padding:0.8em 0; border-bottom:1px dotted #7f1b31;}
  nav ul li .megamenu_service ul li:last-child {border:0;}
  nav ul li .megamenu_service ul li a {display:inline-block; border-bottom:1px solid #fff; color:#7f1b31; pointer-events:auto;}
  nav ul li .megamenu_service ul li a:hover {border-bottom:1px solid #7f1b31;}
  
  nav ul li .megamenu_fee {display:none; position:absolute; width:16em; top:2.5em; left:0; z-index:+1; background:#fff; transition:0.3s; border:3px solid #7f1b31; border-radius:4px;}
  nav ul li:hover .megamenu_fee {display:block;}
  nav ul li .megamenu_fee ul {display:block; padding:0.5em 1.8em; font-size:90%;}
  nav ul li .megamenu_fee ul li {margin:0; padding:0.8em 0; border-bottom:1px dotted #7f1b31;}
  nav ul li .megamenu_fee ul li:last-child {border:0;}
  nav ul li .megamenu_fee ul li a {display:inline-block; border-bottom:1px solid #fff; color:#7f1b31; pointer-events:auto;}
  nav ul li .megamenu_fee ul li a:hover {border-bottom:1px solid #7f1b31;}
  
  nav ul li .megamenu_sodan {display:none; position:absolute; width:16em; top:2.5em; left:0; z-index:+1; background:#fff; transition:0.3s; border:3px solid #7f1b31; border-radius:4px;}
  nav ul li:hover .megamenu_sodan {display:block;}
  nav ul li .megamenu_sodan ul {display:block; padding:0.5em 1.8em; font-size:90%;}
  nav ul li .megamenu_sodan ul li {margin:0; padding:0.8em 0; border-bottom:1px dotted #7f1b31;}
  nav ul li .megamenu_sodan ul li:last-child {border:0;}
  nav ul li .megamenu_sodan ul li a {display:inline-block; border-bottom:1px solid #fff; color:#7f1b31; pointer-events:auto;}
  nav ul li .megamenu_sodan ul li a:hover {border-bottom:1px solid #7f1b31;}*/
  
  /* 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:534px;}
  
  /* mv */
  .mv {width:100%; height:calc(43.4vw - 96px) !important; max-height:600px !important;}
  .mv .slider {overflow:hidden; position:relative; width:100%; height:calc(43.4vw - 96px); max-height:600px; margin-top:96px;}
  .mv .slider_item {width:100%; height:calc(43.4vw - 96px); max-height:600px;} 
  .mv .slider_item .img img {position:absolute; width:100%; height:100%; top:0; left:0; vertical-align:bottom; object-fit:contain; z-index:-1;}
  .mv .slider_item:nth-child(1) {background:linear-gradient(to right, #a5031a 0%, #a5031a 50%, #221816 50%, #221816 100%)}
  .mv .slider_item:nth-child(2) img {object-position:right top;}
  .mv .slider_item:nth-child(3) img {object-position:right top;}
  .mv .slider_item .inner {display:flex; align-items:center; width:94%; max-width:1300px; height:100%; margin:0 auto;}
  .mv .slider_item .inner h1 {width:75%; max-width:972px; font-size:0;}
  .mv .slider_item .inner p {width:100%; margin-top:0; color:#0F4C80; font-size:200%; font-weight:700; line-height:1.6; 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; text-align:center;}
  .mv .slider_item .inner p span {color:#691224; font-size:150%; font-weight:800;}
  .mv .slider_item .inner p.center {text-align:center;}
  .mv .slider_item .inner p.right {text-align:right;}
	 /*.mv .slider_item p img {position:relative; width:auto; height:auto; margin-top:15px; object-fit:none; z-index:1;}*/ 
  .mv .slider_item .inner p img {padding-top:0.5em; width:60%; max-width:840px;}
  
  /* low_mv */
  .low_mv {margin:96px 0 0 0; background:url(../images/bg_mv.jpg) left center no-repeat; background-size:120% auto; color:#7f1b31;}
  .low_mv .inner {position:relative; display:flex; align-items:center; height:10em; padding:0 30px;}
  .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 {padding-bottom:5em;}
  main .contents,
  main .l_inner {width:94%; max-width:1200px; margin:0 auto;}
	
  /* h2 */
  main h2 {margin-top:3em; color:#7f1b31; font-size:180%; font-weight:600; line-height:1.3;}
  
  /* top_rnews */
  #top_rnews {padding:4em 0; background:url(../../images/top/rnews_bg.jpg) center top no-repeat; background-size:cover;}
  #top_rnews .inner {position:relative; display:flex; flex-wrap:wrap; justify-content:flex-end; width:94%; max-width:1200px; margin:0 auto; z-index:+1;}
  #top_rnews .inner .title {width:45%; margin:0 0 0 55%;}
  #top_rnews .inner .title h2 {margin:0; line-height:1;}
  #top_rnews .inner .news {width:45%; margin:2em 0 0 55%; font-size:95%;}
  #top_rnews .inner .news iframe {height:450px;}
  
  /* top_msg */
  #top_msg {margin:5em 0 0 0;}
  #top_msg .inner {display:flex; align-items:flex-start; justify-content:space-between; width:94%; max-width:1200px; margin:0 auto;}
  #top_msg .inner .photo {position:relative; display:flex; justify-content:flex-end; width:50%;}
  #top_msg .inner .photo img {width:80%;}	
  #top_msg .inner .photo h2 {position:absolute; display:flex; align-items:center; flex-wrap:wrap; justify-content:center; width:7em; height:7em; left:0; top:0; margin:0; background:#7f1b31; color:#fff; line-height:1;}
  #top_msg .inner .photo h2 dl {text-align:center;}
  #top_msg .inner .photo h2 dl dt {padding-bottom:0.8em; font-size:35%; font-weight:400; letter-spacing:0.1em;}
  #top_msg .inner .photo h2 dl dd {font-size:90%;}
  #top_msg .inner .note {width:50%; padding:0 0 0 3em; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  
  /* top_srv */
  #top_srv {margin:6em 0 0 0; padding:4em 0 5em 0; background:#7f1b31 url(../../images/top/srv_bg.jpg) center bottom no-repeat; background-size:contain;}
	#top_srv .inner {width:94%; max-width:1200px; margin:0 auto;}
  #top_srv h2 {display:flex; align-items:center; position:relative; width:45%; margin:0 55% 0 0; color:#fff;}
  #top_srv .lead {margin:1em 0 0 0; color:#fff; line-height:1.8;}
  #top_srv ul {width:45%; margin:0 55% 0 0; padding:1em 0 0 0;}
  #top_srv ul li {margin-top:1em; padding:1.5em 2em; background:#fff;}
  #top_srv ul li dl {}
  #top_srv ul li dl dt {padding-left:1.4em; background:url(../../images/top/srv_icon.png) left 0.25em no-repeat; background-size:auto 1em; color:#7f1b31; font-size:130%; font-weight:700;}
  #top_srv ul li dl dd {padding:0.4em 0 0 0; font-size:90%; font-weight:500; line-height:1.7; text-align:justify; text-justify:inter-ideograph;}
  #top_srv a {color:#010101; transition:0.3s;}
  #top_srv a:hover {opacity:0.8;}
  
  /* top_news */
  #top_news {margin:4em 0 0 0;}
  #top_news .inner {width:94%; max-width:1200px; margin:0 auto;}
  #top_news .inner .title {}
  #top_news .inner .title h2 {margin:0;}
  #top_news .inner .news {margin-top:1em; font-size:95%;}
  #top_news .inner .news ul {width:100%; border-top:1px solid #eee;}
  #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 {position:relative; padding:1em 0 1em 8em; border-bottom:1px solid #eee;}
  #top_news .inner .news ul li span {position:absolute; display:inline-block; top:1.2em; left:0; font-family:'Lato', sans-serif;}
	
	/* ptxt */
  .ptxt {margin:1.5em auto 0 auto; font-size:95%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  .ptxt a {border-bottom:1px solid #3f91d6; color:#3f91d6;}
  
  /* 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:45%; padding-top:0.3em;}
  .area2 .ptxt .fright {width:50%; 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; justify-content:space-between; flex-direction:row-reverse; width:100%; margin:0;}
  .area3 .ptxt .fleft {width:50%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  .area3 .ptxt .fright {width:45%; padding-top:0.6em;} 
  
  /* ptop */
  #ptop {position:fixed; width:68px; right:20px; bottom:20px;}
	
	/* cmn_bnr */
  #cmn_bnr {margin:5em 0 0 0; padding:2em 0 0.5em 0; background:#691224;}
  #cmn_bnr ul {display:flex; flex-wrap:wrap; width:94%; max-width:1200px; margin:0 auto;}
  /*#cmn_bnr ul li {width:31.7%; max-width:380px; margin:0 2.45% 1.5em 0;}
  #cmn_bnr ul li:nth-child(3n) {margin-right:0;}*/
  #cmn_bnr ul li {width:23.6%; max-width:380px; margin:0 calc(5.6% / 3) 1.5em 0;}
  #cmn_bnr ul li:nth-child(4n) {margin-right:0;}
  #cmn_bnr ul li:empty {display:none;}
  #cmn_bnr ul a {border:0;}
	
	/* low_contact */
	.low_contact {width:70%; margin:5em auto 0 auto; padding-bottom:2em; border:3px solid #7f1b31;}
	.low_contact .ttl {width:80%; margin:0 auto; padding:1em 0; border-bottom:3px solid #7f1b31; color:#7f1b31; 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 .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; background:#7f1b31; border-radius:3px; color:#fff; transition:0.3s;}
	.low_contact .btn a:hover {opacity:0.8;}
	.low_contact .btn a::after {position:absolute; display:block; content:''; width:0.4em; height:0.4em; border:1px solid #fff; border-bottom:0; border-left:0; right:1em; top:42%; transform:rotate(45deg);}
  
  /* 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;}
  
  /* f_bnr */
  ul.f_bnr {display:flex; justify-content:space-between;  width:460px; margin:4em auto 0 auto;}
  ul.f_bnr li {width:210px;}
  
  /* footer */
  footer {margin:0; padding:2.5em 0 4em 0; background:#7f1b31;}
  footer .inner {display:flex; justify-content:space-between; width:94%; max-width:1200px; margin:0 auto; color:#fff;}
  footer .inner ul {display:flex; flex-wrap:wrap; width:calc(100% - 300px); font-size:85%;}
  footer .inner ul a {border-bottom:1px solid transparent; color:#fff; transition:0.3s;}
  footer .inner ul a:hover {border-bottom:1px solid #fff;}
  footer .inner ul li {margin:0 0 1em 0; padding:0 1.2em;}
  footer .inner .logo {width:240px;}
  footer .inner .logo img {width:240px;}
  footer .inner p {margin:0.5em 0 0 0; font-family:'Lato', sans-serif; font-size:60%; font-weight:400; letter-spacing:0.05em;}

}

@media screen and (min-width:901px) and (max-width:1240px) {
  
  body {font-size:1.5vw;}
 
  header .logo {max-width:200px;}
  
  .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;
}


