@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:#7a7066; font-family:'Noto Sans JP', sans-serif;}
ul {list-style-type:none;}

body a {cursor:pointer !important;}

/* 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:#590026;}
.uline {border-bottom:1px solid #7a7066;}

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

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

.mT0 {margin-top:0 !important;}
.mT05em {margin-top:0.5em !important;}
.mT1em {margin-top:1em !important;}
.mT2em {margin-top:2em !important;}
.mT3em {margin-top:3em !important;}
.mT4em {margin-top:4em !important;}
.mT5em {margin-top:5em !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:80px; z-index:5; transition:0.3s;}
  header .logo {position:absolute; width:55%; max-width:352px; top:25px; left:15px;}	
  header .contact {position:absolute; right:70px; top:22px;}
	 header .contact a {position:relative; display:inline-block; padding:0 1.5em; background:#590026; color:#fff; font-size:70%; letter-spacing:0.05em; line-height:36px; text-decoration:none;}
  header .gnavbtn  {position:absolute; width:60px; height:60px; right:0; top:10px; z-index:11;}
  header .gnavbtn span {position:relative; display:block; width:32px; height:2px; left:12px; background:#7a7066; transition:0.3s;}
  header .gnavbtn span:nth-child(1) {top:18px;}
  header .gnavbtn span:nth-child(2) {top:26px;}
  header .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:#fefaf6; z-index:4;}
  nav ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:80%; margin:100px auto 0 auto; font-size:80%; font-weight:500;}
  nav ul li {width:100%; margin:2% 0 0 0; text-align:center;}
  nav ul li a {display:block; position:relative; padding:0.8em 0; border:1px solid #7a7066; color:#7a7066; text-decoration:none;}
  nav ul li a::after {position:absolute; display:block; content:''; width:0.6em; height:0.6em; top:42%; right:1.5em; border-top:1px solid #7a7066; border-right:1px solid #7a7066; transform:rotate(45deg);}
  
  /* 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:calc(90% * 0.7); max-width:442px;}  
  
  .mv {width:100%; height:100vh; border-right:5px solid #590026;}
  .mv .slider {overflow:hidden; position:relative; width:100%; height:100vh;}
  .mv .slider_item {width:100%; height:100vh; background:#fefaf6;}	
	 .mv .inner .img {position:absolute; display:flex; align-items:center; width:calc(100% + 5px); height:40vh; top:0; left:0; background:#fefaf6; object-fit:cover;}
	 .mv .inner {position:absolute; display:flex; width:calc(100% + 5px); height:60vh; bottom:0; left:0; background:#fefaf6;}
	 .mv .inner .logo_box {width:80%; margin:0 auto;}
  .mv .inner .mv_logo {width:90%; max-width:440px; margin:2em auto 0 auto;}
  .mv .inner .logo_box p {width:100%; margin:1em 0 0 0; color:#590026; font-size:130%; font-weight:600; text-align:center;}
  .mv .inner p.center {text-align:center;}
  .mv .inner p.right {text-align:right;}
	
	 .mv dl.tel {display:flex; flex-wrap:wrap; margin-top:1em; text-align:center;}
  .mv dl.tel dt {width:100%; font-size:170%; letter-spacing:0.05em;}
  .mv dl.tel dt span {color:#590026;}
  .mv dl.tel dd {width:100%; font-size:80%;}
  
  /* low_mv */
  .low_mv {margin:80px 0 0 0; background:url(../../images/top/news_bg.jpg) center center no-repeat; background-size:cover; color:#590026;}
  .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-top:3em;}
  main .contents,
  main .l_inner {width:90%; margin:0 auto;}
  
  /* h2 */
  main h2 {padding-top:2em; padding-bottom:0.5em; border-bottom:4px double #590026; color:#590026; font-size:150%; font-weight:600; line-height:1.3;}
  main > h2:first-child {padding-top:0;}
  
  /* top_rnews */
  #top_rnews {padding-top:40vw; background:url(../../images/top/rnews_bg.jpg) center top no-repeat; background-size:contain; border-top:1px solid #000;  border-right:5px solid #590026;}
  #top_rnews .inner {width:100%; padding:0 0 4em 0; background:#fefaf6;}
  #top_rnews .inner .title {}
  #top_rnews .inner .title h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_rnews .inner .title h2 span {font-size:50%; letter-spacing:0.1em;}
  #top_rnews .inner .news {width:86%; margin:2em auto 0 auto; font-size:95%;}
  #top_rnews .inner .news iframe {height:13em;}
  
  /* top_msg */
  #top_msg {padding-top:40vw; background:url(../images/top/msg_bg.jpg) left top no-repeat; background-size:contain; border-top:1px solid #000; border-right:5px solid #590026;}
  #top_msg .inner {padding:0 0 4em 0; background:#fefaf6;}
  #top_msg .inner h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_msg .inner h2 span {font-size:50%; letter-spacing:0.1em;}
  #top_msg .inner .note {width:86%; margin:2em auto 0 auto; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  #top_msg .inner .note span {color:#590026; font-size:120%;}
  
  /* top_srv */
	 #top_srv {padding-top:40vw; background:url(../../images/top/srv_bg.jpg) center top no-repeat; background-size:contain; border-top:1px solid #000; border-right:5px solid #590026;}
  #top_srv .inner {padding:0 0 4em 0; background:#fefaf6;}
  #top_srv .inner h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_srv .inner h2 span {font-size:50%; letter-spacing:0.1em;}	
  #top_srv .lead {width:86%; margin:2em auto 0 auto; color:#590026; line-height:1.8; text-align:center;}
  #top_srv ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:86%; margin:1em auto 0 auto; }
  #top_srv ul a {display:block; width:48%; margin:1em 0 0 0; border:3px solid #008b0d; border-radius:1em; text-decoration:none;}
  #top_srv ul li {width:100%;}
  #top_srv ul li dl {width:100%;}
  #top_srv ul li dl dt {width:100%; line-height:1;}
  #top_srv ul li dl dd {width:90%; margin:0 auto; padding:0.3em 0 1.5em 0; font-size:80%; line-height:1.7; text-align:justify; text-justify:inter-ideograph;}
  #top_srv ul li dl dd span {display:block; padding-bottom:0.5em; border-bottom:2px solid #590026; font-size:140%; font-weight:700; text-align:center;}
  #top_srv ul a:nth-child(1) {}
  #top_srv ul a:nth-child(1) dd {color:#008b0d;}
  #top_srv ul a:nth-child(1) dd span {border-bottom:2px solid #008b0d;}
  #top_srv ul a:nth-child(2) {border:3px solid #8b0066;}
  #top_srv ul a:nth-child(2) dd {color:#8b0066;}
  #top_srv ul a:nth-child(2) dd span {border-bottom:2px solid #8b0066;}
  #top_srv ul a:nth-child(3) {border:3px solid #007d8b;}
  #top_srv ul a:nth-child(3) dd {color:#007d8b;}
  #top_srv ul a:nth-child(3) dd span {border-bottom:2px solid #007d8b;}
  #top_srv ul a:nth-child(4) {border:3px solid #d18300;}
  #top_srv ul a:nth-child(4) dd {color:#d18300;}
  #top_srv ul a:nth-child(4) dd span {border-bottom:2px solid #d18300;}
  
  /* top_news */
  #top_news {padding-top:40vw; background:url(../../images/top/news_bg.jpg) center top no-repeat; background-size:contain; border-top:1px solid #000; border-right:5px solid #590026;}
  #top_news .inner {padding:0 0 4em 0; background:#fefaf6;}
  #top_news .inner .title {}
  #top_news .inner .title h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_news .inner .title h2 span {font-size:50%; letter-spacing:0.1em;}
  #top_news .inner .news {width:86%; margin:1em auto 0 auto; 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:1.5em; border-bottom:1px solid #7f7f7f;}
  #top_news .inner .news ul li span {display:block; padding:0 0 0.3em 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;} 
  
  /* area1 */
  .area1 {margin: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 {}
  .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:40px; right:15px; bottom:15px; z-index:5;}
	
	  /* cmn_bnr */
  #cmn_bnr {width:90%; margin:3em auto 0 auto;}
  #cmn_bnr ul {display:flex;  flex-wrap:wrap; justify-content:space-between; width:100%; font-size:0; line-height:1;}
  #cmn_bnr ul li {width:calc(100% / 4);}
	
	 #cmn_bnr dl.tel {padding-top:1.5em; text-align:center;}
  #cmn_bnr dl.tel dt {width:100%; font-size:170%; letter-spacing:0.05em;}
  #cmn_bnr dl.tel dt span {color:#590026;}
  #cmn_bnr dl.tel dd {width:100%; font-size:80%;}
  #cmn_bnr a {text-decoration:none;}
	
	/* low_contact */
	.low_contact {width:100%; margin:5em auto 0 auto; padding-bottom:2em; border:3px solid #590026;}
	.low_contact .ttl {width:90%; margin:0 auto; padding:1em 0; border-bottom:2px solid #590026; color:#590026; 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:#590026; border:2px solid #590026; 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:90%; margin:12% auto 0 auto;}
  #cmn_contact a {display:block; width:90%; margin:0 auto;}
  
  /* footer */
  footer {margin-top:3em; background:#590026; border-top:1px solid #000;}
  footer .inner {color:#fff;}
  footer ul {display:flex; flex-wrap:wrap; justify-content:center; width:100%; margin:0 auto; padding:1em 7% 1.2em 7%; border-bottom:1px solid #7a3351; font-size:85%;}
  footer ul a {display:inline-block; color:#fff; text-decoration:none;}
  footer ul li {position:relative; padding:0.3em 2em 0.3em 1em;}
  footer ul li:last-child {padding-right:0;}
  footer ul li::after {position:absolute; display:block; content:'／'; top:0; right:0; color:#fff;}
  footer ul li:last-child::after {display:none;}
  footer .logo {width:200px; margin:3em auto 0 auto;}
  footer p {margin-top:4em; padding:1.5em 0; background:#7a3351; color:#e9f0eb; font-size:70%; font-weight:400; text-align:center; letter-spacing:0.05em;}

}

/* 横向き */
@media (orientation: landscape) and (max-width:900px){
  
  .mv {height:900px !important;}
  .mv .slider {height:900px !important;}
  .mv .slider_item {height:900px !important;}	
  .mv .inner .img {position:absolute; display:flex; align-items:center; width:calc(100% + 5px); height:270px; top:0; left:0; background:#fefaf6; object-fit:cover;}
  .mv .inner {height:630px !important;}
  .mv .inner .mv_logo {width:90%; max-width:440px; margin:1.2em auto 0 auto;}
  .mv .inner .logo_box p {margin:0.5em 0 0 0; font-size:110% !important;}
  
}



/*********************************
 * 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;}
  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; display:flex; align-items:center; justify-content:space-between; width:100%; height:80px; padding:0 100px 0 30px; top:0; left:0; z-index:5; transition:0.3s;}
  header .inner {}
  header .logo {width:352px;} 
	
  header .contact {}
  header .contact a {position:relative; display:inline-block; padding:0.4em 2em; background:#590026; color:#fff; font-size:70%; letter-spacing:0.05em; transition:0.3s;}
  :not(.top) > .contact a:hover {background:#fff; border:1px solid #590026; color:#590026;}

  header .gnavbtn  {position:absolute; width:60px; height:60px; top:10px; right:20px; cursor:pointer; z-index:11;}
  header .gnavbtn span {position:relative; display:block; width:32px; height:2px; left:12px; background:#7a7066; transition:0.3s;}
  header .gnavbtn span:nth-child(1) {top:18px;}
  header .gnavbtn span:nth-child(2) {top:26px;}
  header .gnavbtn span:nth-child(3) {top:34px;}
  
  /* nav */
  nav {position:fixed; display:none; width:100%; height:100%; top:0; left:0; background:#fefaf6; z-index:4;}
  nav ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:94%; margin:130px auto 0 auto; font-size:85%; font-weight:500;}
  nav ul li {width:32.4%; margin:1.5% 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 #7a7066; color:#7a7066; transition:0.3s;}
  nav ul li a:hover {background:#590026; border:1px solid #590026; color:#fff;}
  nav ul li a::after {position:absolute; display:block; content:''; width:0.6em; height:0.6em; top:42%; right:1.5em; border-top:1px solid #7a7066; border-right:1px solid #7a7066; 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:442px;}
  
  /* mv */
  .mv {position:relative; overflow:hidden; width:100%; height:auto !important; max-height:100vh; /*height:100vh;*/ background:#fefaf6;}
  .mv .slider {overflow:hidden; position:relative; width:100%; /*height:100vh;*/}
  .mv .slider_item {width:100%; height:100%;}
  .mv .inner {position:absolute; display:flex; width:50%; height:100%;/*height:100vh;*/ top:0; left:50%; background:#fefaf6; border-right:10px solid #590026;}
  .mv .inner .img {position:absolute; width:50%; height:100%;/*height:100vh;*/ top:0; left:0;}
  .mv .inner .img img {object-fit:cover;}
  .mv .inner .slider_item:nth-child(1) .img img {object-position:left bottom;}
	.mv .inner .logo_box {width:90%; margin:15vw auto 0 auto;}
  .mv .inner .mv_logo {width:100%; max-width:352px; margin:10% auto 0 auto;}
  .mv .inner .logo_box p {width:100%; margin:0.7em 0 0 0; color:#590026; font-size:170%; font-weight:600; text-align:center;}
  .mv .inner p.center {text-align:center;}
  .mv .inner p.right {text-align:right;}

  
  /* low_mv */
  .low_mv {margin:80px 0 0 0; background:url(../../images/top/news_bg.jpg) center center no-repeat; background-size:cover; color:#590026;}
  .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 {position:relative; padding-top:3em; z-index:+1;}
  main .contents,
  main .l_inner {width:94%; max-width:1200px; margin:0 auto;}
	
  /* h2 */
  main h2 {padding-top:3em; padding-bottom:0.5em; border-bottom:4px double #590026; color:#590026; font-size:150%; font-weight:600; line-height:1.3;}
  main > h2:first-child {padding-top:0;}
  
  /* top_rnews */
  #top_rnews {background:url(../../images/top/rnews_bg.jpg) center top no-repeat; background-size:cover; border-top:1px solid #000;}
  #top_rnews .inner {width:50%; margin-left:50%; padding:3em 0 5em 0; background:#fefaf6; border-right:10px solid #590026;}
  #top_rnews .inner .title {}
  #top_rnews .inner .title h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_rnews .inner .title h2 span {font-size:50%; letter-spacing:0.1em;}
  #top_rnews .inner .news {width:70%; margin:2em auto 0 auto; font-size:95%;}
  #top_rnews .inner .news iframe {height:300px;}
  
  /* top_msg */
  #top_msg {background:url(../images/top/msg_bg.jpg) center top no-repeat; background-size:cover; border-top:1px solid #000;}
  #top_msg .inner {width:50%; margin-left:50%; padding:5em 0 7em 0; background:#fefaf6; border-right:10px solid #590026;}
  #top_msg .inner h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_msg .inner h2 span {font-size:50%; letter-spacing:0.1em;}
  #top_msg .inner .note {width:70%; margin:2em auto 0 auto; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  #top_msg .inner .note span {color:#590026; font-size:130%;}
  
  /* top_srv */
	 #top_srv {background:url(../../images/top/srv_bg.jpg) center top no-repeat; background-size:cover; border-top:1px solid #000;}
  #top_srv .inner {width:50%; margin-left:50%; padding:3em 0 5em 0; background:#fefaf6; border-right:10px solid #590026;}
  #top_srv .inner h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_srv .inner h2 span {font-size:50%; letter-spacing:0.1em;}	
  #top_srv .lead {width:70%; margin:2em auto 0 auto; color:#590026; line-height:1.8; text-align:center;}
  #top_srv ul {display:flex; flex-wrap:wrap; justify-content:space-between; width:70%; max-width:566px; margin:1em auto 0 auto; }
  #top_srv ul a {display:block; width:48%; max-width:283px; margin:1em 0 0 0; border:3px solid #008b0d; border-radius:1em; transition:0.3s;}
  #top_srv ul a:hover {opacity:0.8;}
  #top_srv ul li {width:100%;}
  #top_srv ul li dl {width:100%;}
  #top_srv ul li dl dt {width:100%; line-height:1;}
  #top_srv ul li dl dd {width:90%; margin:0 auto; padding:0.3em 0 1.5em 0; font-size:80%; line-height:1.7; text-align:justify; text-justify:inter-ideograph;}
  #top_srv ul li dl dd span {display:block; padding-bottom:0.5em; border-bottom:2px solid #590026; font-size:140%; font-weight:700; text-align:center;}
  #top_srv ul a:nth-child(1) {}
  #top_srv ul a:nth-child(1) dd {color:#008b0d;}
  #top_srv ul a:nth-child(1) dd span {border-bottom:2px solid #008b0d;}
  #top_srv ul a:nth-child(2) {border:3px solid #8b0066;}
  #top_srv ul a:nth-child(2) dd {color:#8b0066;}
  #top_srv ul a:nth-child(2) dd span {border-bottom:2px solid #8b0066;}
  #top_srv ul a:nth-child(3) {border:3px solid #007d8b;}
  #top_srv ul a:nth-child(3) dd {color:#007d8b;}
  #top_srv ul a:nth-child(3) dd span {border-bottom:2px solid #007d8b;}
  #top_srv ul a:nth-child(4) {border:3px solid #d18300;}
  #top_srv ul a:nth-child(4) dd {color:#d18300;}
  #top_srv ul a:nth-child(4) dd span {border-bottom:2px solid #d18300;}
  
  /* top_news */
  #top_news {background:url(../../images/top/news_bg.jpg) center top no-repeat; background-size:cover; border-top:1px solid #000;}
  #top_news .inner {width:50%; margin-left:50%; padding:3em 0 5em 0; background:#fefaf6; border-right:10px solid #590026;}
  #top_news .inner .title {}
  #top_news .inner .title h2 {width:86%; margin:0 auto; padding-bottom:0.5em; border-bottom:4px double #590026; text-align:center;}
  #top_news .inner .title h2 span {font-size:50%; letter-spacing:0.1em;}
  #top_news .inner .news {width:70%; margin:2em auto 0 auto; 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:1.5em; border-bottom:1px solid #7f7f7f;}
  #top_news .inner .news ul li span {display:block; padding:0 0 0.3em 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;}
  
  /* area1 */
  .area1 {margin:0 auto; padding-top:1em;}
  
  /* 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:40px; right:50px; bottom:50px; z-index:5;}
	
	/* cmn_bnr */
  #cmn_bnr {width:90%; max-width:784px; margin:4em auto 0 auto;}
  #cmn_bnr ul {display:flex; flex-wrap:wrap; justify-content:center; width:100%; margin:0 auto; font-size:0; line-height:1;}
  #cmn_bnr ul li {width:calc(100% / 4); max-width:196px;}
	
	#cmn_bnr dl.tel {padding-top:1.5em; text-align:center;}
  #cmn_bnr dl.tel dt {width:100%; font-size:170%; letter-spacing:0.05em;}
  #cmn_bnr dl.tel dt span {color:#590026;}
  #cmn_bnr dl.tel dd {width:100%; font-size:80%;}
	
	/* low_contact */
	.low_contact {width:70%; margin:5em auto 0 auto; padding-bottom:2em; border:3px solid #590026;}
	.low_contact .ttl {width:80%; margin:0 auto; padding:1em 0; border-bottom:3px solid #590026; color:#590026; 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:#590026; border:2px solid #590026; border-radius:3px; color:#fff; transition:0.3s;}
	.low_contact .btn a:hover {background:#fff; color:#590026;}
	.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);}
	.low_contact .btn a:hover::after {border:1px solid #590026; 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 {margin:4em 0 0 0; background:#590026; border-top:1px solid #000;}
  footer .inner {color:#fff;}
  footer ul {display:flex; justify-content:center; width:100%; padding:1em 0 1.2em 0; border-bottom:1px solid #7a3351; font-size:85%;}
  footer ul a {display:inline-block; border-bottom:1px solid transparent; color:#fff; transition:0.3s;}
  footer ul a:hover {border-bottom:1px solid #fff;}
  footer ul li {position:relative; padding:0 2em 0 1em;}
  footer ul li:last-child {padding-right:0;}
  footer ul li::after {position:absolute; display:block; content:'／'; top:0; right:0; color:#fff;}
  footer ul li:last-child::after {display:none;}
  footer .logo {width:226px; margin:4em auto 0 auto;}
  footer p {margin-top:4em; padding:1.5em 0; background:#7a3351; color:#e9f0eb; font-size:70%; 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%;}

}

@media screen and (min-width:1580px) {
  .mv .inner .logo_box {margin:10vw auto 0 auto;}
}

/* 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;
}


