/********************************************************************************
common.css
********************************************************************************/

/*============================================================
 import
*============================================================*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital@1&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

/*============================================================
 format
*============================================================*/
html {
	width: 100%;
	background-color: #fff;
	font-size: 62.5%;
}
body {
	font-family:"Noto Sans JP",sans-serif;
	font-style: normal;
	font-weight: normal;
	font-size: 1.4rem;
	line-height: 1.8;
	color: #292C35;
}
main {
	width: 100%;
	overflow: hidden;
	position: relative;
	z-index: 1100;
}
section {
	width: 100%;
	padding: 1px 0;
}
img {
	max-width: 100%;
	height: auto;
}
span {
	font-weight: inherit;
}
a[href^="tel:"] {
    pointer-events: none;
}
h2,
h3 {
	line-height: 1.6;
}

/*============================================================
 共通部品
*============================================================*/
/* pc-sp display switch
---------------------------------------- */
.c_forPC {
	display: initial;
}
.c_forSP {
	display: none;
}

/* inner
---------------------------------------- */
.c_inner {
	width: 100%;
	max-width: 1140px;
	padding: 0 24px;
	margin: 0 auto;
}

/* flexbox
---------------------------------------- */
.c_flex {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	 -ms-flex-wrap: wrap;
         flex-wrap: wrap;
}
.c_flex[data-type="center"] {
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
}
.c_flex[data-type="between"] {
	-webkit-box-pack: justify;
       -ms-flex-pack: justify;
     justify-content: space-between;
}
.c_flex[data-type-vertical="center"] {
	-webkit-box-align: center;
	   -ms-flex-align: center;
		  align-items: center;
}
.c_flex[data-type-vertical="stretch"] {
	-webkit-box-align: stretch;
       -ms-flex-align: stretch;
          align-items: stretch;
}


/* button
---------------------------------------- */
.c_btn {
	display: block;
	width: 300px;
	height: 64px;
	line-height: 64px;
	text-align: center;
	background: linear-gradient(90deg, #00BCC5 0%, #348FE9 121.17%);
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
	border-radius: 100px;
	font-size: 2rem;
	font-weight: 700;
	color: #fff;
	transition: all .3s;
}
.c_btn:hover {
	opacity: 0.7;
}


/*============================================================
 header
*============================================================*/
.header {
	background: #fff;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1200;
	display: none;
}
.header__inner {
	max-width: 1200px;
	margin: 16px auto;
}
.header__linkList {
	align-items: center;
}
.header__linkList a {
	font-size: 1.8rem;
	font-weight: 700;
	margin-right: 40px;
}
.header__linkList li:last-child a {
	margin-right: 0;
}
.header__linkBtn {
	width: 262px;
}
.toggle {
	display: none;
}

/*============================================================
 footer
*============================================================*/
.footer {
	padding-bottom: 80px;
	position: relative;
	overflow: hidden;
	z-index: 1100;
}
.footer:before {
	position: absolute;
	content: "";
	display: block;
	width: 2011px;
	height: 1051px;
	background: url(../images/common/footer_bg.png) no-repeat;
	background-size: contain;
	left: 58%;
	transform: translate(-50%, 0);
	bottom: -526px;
	z-index: -1;
}
.footer__logo {
	width: 358px;
	margin: 0 auto 44px;
}
.footer__link {
	justify-content: center;
	align-items: center;
	margin-bottom: 26px;
}
.footer__link li {
	display: block;
	margin: 0 20px;
}
.footer__link a {
	font-weight: 700;
	font-size: 1.8rem;
}
.footer__linkBtn {
	width: 164px;
	height: 48px;
	line-height: 48px;
	font-size: 1.6rem;
}
.footer__sns {
	justify-content: center;
	align-items: center;
	margin-bottom: 48px;
}
.footer__sns li {
	display: block;
	margin: 0 18px;
}
.footer__sns a {
	display: block;
}
.footer__snsTw {
	width: 50px;
}
.footer__snsIn {
	width: 50px;
}
.footer__snsLn {
	width: 50px;
}
.footer__info {
	max-width: 480px;
	margin: 0 auto 24px;
	text-align: center;
}
.footer__info p {
	margin-bottom: 40px;
}
.footer__info a {
	display: inline-block;
	margin: 0 12px;
	text-decoration: underline;
}
.footer__copyright {
	text-align: center;
	font-size: 1rem;
}


/*============================================================
 スライダー(slick)
*============================================================*/
/* dots
---------------------------------------- */
.slickDots {
  position: absolute;
	bottom: 0;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slickDots li {
  position: relative;
  display: inline-block;
  height: 8px;
  width: 8px;
  margin: 0 7px;
  padding: 0;
  cursor: pointer;
}
.slickDots li.slick-active
  button::before {
  background: #0099FF;
}
.slickDots li button {
  background: transparent;
  border:0;
  font-size: 0pt;
}
.slickDots li button::before {
  position: absolute;
  top: 0;
  left: 0;
	display: block;
  content: "";
  width: 8px;
  height: 8px;
	background: #fff;
	border-radius: 50%;
}

/* arrow
---------------------------------------- */
.slick-arrow {
  position: absolute;
  margin: auto;
	cursor: pointer;
}
.prev-arrow {
  z-index: 10;
}
.next-arrow {
}


