@charset "utf-8";
/* CSS Document */



/* クッキーポリシーのみ */
.footer__main__lnk li:not(.cookiepolicy) {
  display: none;
}

/* フォント */
body {
  color: #666666;
	position: relative;
}



/* ===========================================================
 header
=========================================================== */

header nav {
 padding: 5vw 4vw;
 display: flex;
 align-items: center;
 justify-content: space-between;
 background: #fff;
 box-shadow: 0 0 1vw 0.2vw #e9e9e9;
}

header nav figure {
 width: 35vw;
}

header nav .wrapper {
 display: flex;
 align-items: center;
 justify-content: space-between;
 width: 48vw;
}

header nav .wrapper .link {
 font-size: 3vw;
 font-weight: 700;
 text-decoration: underline;
 text-underline-offset: 1vw;
 letter-spacing: 0.2vw;
}

header nav .wrapper .link:hover {
 text-decoration: none;
}


header nav .wrapper span {
	display: block;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 4vw;
	background: #fff;
	box-shadow: 0 0 1vw 0.2vw #e9e9e9;
	z-index: 999;
}

header nav .wrapper .entry {
 background: #bd0a0a;
 color: #fff;
 font-weight: 700;
 font-size: 3.4vw;
 padding: 3vw 0;
 border-radius: 1vw;
	position: relative;
	text-align: center;
}

header nav .wrapper .entry:after {
  content: "";
  width: 3.5vw;
  height: 2.5vw;
  background: url("../img/arr_hoso.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 5vw;
  transform: translateY(-50%);
}

/* スクロール固定 
------------------------*/
header .fixedMenu.scrolled {
	position: fixed !important;
	top: 0;
	left: 0 !important;
	right: 0 !important;
	z-index: 99999999;
  transition: all .3s ease;
}



/* ===========================================================
 telentry(電話)
=========================================================== */

.telmoContent {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: rgba(0,0,0,0.4);
	z-index: 9999999999;
	overflow-x: scroll;
	display: none;
	align-items: center;
	justify-content: center;
}


.telmoContent .telmo_bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
}

.telmoContent.open_wrap {
    display: flex;
}

.telentry {
  padding: 14vw 6vw 4vw;
  background: #fff;
  position: relative;
  margin: 4vw;
}

.telentry h2 {
  margin: 0 0 8vw;
  text-align: center;
  font-size: 6vw;
}


.telentry .entarea {
  background: #f4f4f4;
  margin: 0 auto 6vw;
  border-radius: 2vw;
  box-shadow: none;
  position: relative;
  padding: 8vw 4vw;
  text-align: center;
}


.telentry .entarea .manomaent {
  background: #fff;
  border: solid 1px #e9e9e9;
  padding: 4vw 6vw 3.5vw;
  text-align: center;
  font-size: 4vw;
  font-weight: 700;
  display: inline-block;
  margin: 0 0 5vw;
  border-radius: 3vw;
}

.telmoContent .telentry .entarea .manomatel span {
	font-weight: 700;
	color: red;
}

.telentry .entarea .manomatel a {
  font-size: 8.4vw;
  font-weight: 700;
  font-family: "Arial", sans-serif;
  color: #0c0c0c;
  margin: 0 auto 3vw;
  display: inline-block !important;
  text-decoration: none;
}

.telentry .entarea .manomatel a:before {
 content: "";
 background:url("../img/freedial.svg") no-repeat;
 background-size: contain;
 width: 12vw;
 height: 8vw;
 display: inline-block;
 margin: 0 1vw 0 0;
vertical-align: middle;
}

.telentry .entarea .manomatel p {
  font-size: 3.6vw;
  font-weight: 700;
  line-height: 6vw;
  margin: 0 0 3vw;
  position: relative;
  letter-spacing: 0;
}

.telentry .entarea .manomatel p:before {
  content: "※";
}

.telentry .entarea .manomatel ul li {
  font-size: 3.4vw;
  letter-spacing: 0px;
  color: #585858;
  margin: 0 0 2vw;
  line-height: 5vw;
}

.telentry .contact a {
  background: var(--box-clr);
  color: #fff;
  width: 80vw;
  margin: 6vw auto 8vw;
  text-align: center;
  font-size: 4.3vw;
  font-weight: 700;
  letter-spacing: 0.3vw;
  padding: 3.8vw 0 4.2vw;
  border-radius: 1.5vw;
  position: relative;
}

.telentry .contact a:after {
  content: "";
  width: 4.4vw;
  height: 3vw;
  background: url("/assets/img/common/arr_hoso.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 5vw;
  transform: translateY(-50%);
}

.telentry .contact .txt {
  font-size: 3.4vw;
  text-align: center;
  letter-spacing: 0;
  line-height: 5vw;
}



/* ===========================================================
 Information
=========================================================== */


#information {
	background: #fff;
}
	
#information h2 {
  font-size: 7vw;
  display: block;
  font-family: century-gothic, Century Gothic, sans-serif;
  font-weight: 700;
  letter-spacing: 1vw;
  text-align: center;
  border-top: solid 1px #ccc;
  padding: 12vw 0 3vw;
}

#information ul li {
  padding: 10vw 0;
  border-bottom: solid 1px #ccc;
}

#information ul li .lead {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 4vw;
}

#information ul li .lead span {
  font-size: 3vw;
  border: solid 1px #ccc;
  padding: 2vw 5vw;
  margin: 0 4vw 0 0;
}

#information ul li .lead time {
  font-size: 3vw;
}

#information ul li .txt {
  font-size: 3.4vw;
  text-align: center;
  width: 85vw;
  margin: 0 auto;
  line-height: 5vw;
}





/* ===========================================================
 contents
=========================================================== */

#contents {
  width: 90vw;
  margin: 12vw auto 0;
}

#contents a {
  display: inline;
  text-decoration: underline;
  color: #1a81d0;
  word-break: break-all;
}

/* ===========================================================
 調節
=========================================================== */

.small {
  font-size: 3vw;
}

.bg {
  font-weight: 700;
}


/* ===========================================================
 hed
=========================================================== */

.hed {
  margin: 0 0 12vw
}

.hed .time {
  text-align: right;
  font-size: 2.7vw;
  line-height: 4vw;
  margin: 0 0 4vw
}

.hed .ttl {
  border-top: double 4px #3e3a39;
  border-bottom: double 4px #3e3a39;
  padding: 4vw 0;
  font-size: 5vw;
  line-height: 7vw;
  margin: 0 0 8vw;
}

.hed .lead {
  font-size: 3.4vw;
  line-height: 5.5vw
}

.hed .lead a {
  display: inline
}

.hed figure {
  margin: 6vw auto;
}

.hed .txt {
  font-size: 3.2vw;
  line-height: 5vw;
}


/* ===========================================================
 area
=========================================================== */

.area {
  margin: 0 0 12vw;
}

.area .ttl {
  font-size: 4.2vw;
  margin: 12vw 0 6vw;
  border-left: solid 8px #3c3c3c;
  padding: 0 0 0 3vw;
  line-height: 5.6vw;
}

.area .lead {
  font-size: 3.6vw;
  font-weight: 700;
  line-height: 4.8vw;
  margin: 0 0 4vw;
}

.area .txt {
  font-size: 3.2vw;
  line-height: 5vw;
  margin: 0 0 4vw;
}

.area .txt .bg {
  font-weight: 700;
}

/* -----------------------------
 table
----------------------------- */

.area table {
  margin: 0 0 4vw;
  border-top: solid 1px #ccc;
  border-left: solid 1px #ccc;
}

.area table th,
.area table td {
  padding: 3vw 4vw;
  font-size: 3vw;
  border-bottom: solid 1px #ccc;
  border-right: solid 1px #ccc;
  vertical-align: middle;
  line-height: 3.6vw;
}

.area table tr:nth-of-type(1) td {
  background: #f4f4f4;
}

.area table th {
  background: #f4f4f4;
}

/* -----------------------------
 img
----------------------------- */

.area .img {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 6vw;
}

.area .img li {
  margin: 0 3vw;
  width: 40vw;
}




/* -----------------------------
 carousel
----------------------------- */

.area .carousel {
 display: flex;
 flex-flow: row nowrap;
 align-items: center;
 justify-content: space-between;
  margin: 4vw 0;
}

.area .carousel li {
 width: 23%;
}

.area .carousel li:last-of-type {
 margin: 0;
}

.area .carousel li img {
 width: 100%;
}

.area .carousel li p {
  margin: 2vw 0 0;
  font-size: 2.7vw;
  font-weight: 700;
}

/* -----------------------------
 beside
----------------------------- */

section .area .beside {
 margin: 0 0 6vw;
}

section .area .beside .txt {
 margin: 0;
}

/* -----------------------------
 box
----------------------------- */

.area .box {
  border: solid 1px #888;
  padding: 6vw 6.5vw;
  border-radius: 2vw
}

/* -----------------------------
 figure
----------------------------- */

.area figure {
  margin: 0 0 6vw
}

.area figure figcaption {
  margin: 3vw 0 0;
  color: #999;
  font-size: 2.7vw;
  line-height: 3.8vw;
}



/* ===========================================================
 fot
=========================================================== */


section .fot ul {
 margin: 12vw 0 0;
 border-top: solid 1px #ccc;
 padding: 4vw 0;
}

section .fot ul li {
 position: relative;
 margin: 0 0 2vw;
 padding: 0 0 0 4vw;
 font-size: 2.7vw;
  line-height: 4vw
}

section .fot ul li:before {
 content: "※";
 position: absolute;
 left: 0;
}