@charset "UTF-8";

/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 共通項目 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

html,
input,
textarea,
select,
button {
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 400;
  font-size: 10px;
}

html {
	color: #333;
	background: #fff;
	font-size: 10px;
	line-height: 1.7;
	word-break: break-all;
	letter-spacing: 0.08rem;
}

body {
	background: #fff;
	margin: 0;
}

.en {
  font-family: "Reddit Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
  border: 0;
  margin: 0;
  vertical-align: top;
  max-width: 100%;
}

p {
	margin: 0;
	padding: 0;
	overflow-wrap: break-word;
	word-wrap: break-word;
	color: #333;
	line-height: 180%;
  margin: 0;
}

a {
	text-decoration: none;
	transition: all .4s;
	color:#212121;
	cursor: pointer;
}
a:hover{
  opacity: 0.85;
}

.link-non{
	pointer-events: none;
	opacity: 0.6!important;
}


img{
	width: 100%;
	height: auto;
	object-fit: contain;
}

input,
select,
textarea,
button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

textarea {
  resize: vertical;
}

button {
  border: none;
  cursor: pointer;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 14px;
  font-weight: 500;
  margin: 0;
  padding: 0;
}

main {
  display: block;
}



#wrapper {
  position: relative;
	overflow-x: hidden;
}

dl,dt,dd {
  padding: 0;
  margin: 0;
}

sup{
	vertical-align: baseline;
    font-size: 70%;
}

.sp {
  display: none !important;
}
a[href^="tel:"] {
  pointer-events: none;
}



/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
body{
	&.noscroll{
		overflow: hidden;		
	}
}



.c-inner{
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}
.c-inner02{
	max-width: 900px;
	width: 90%;
	margin: 0 auto;
}
.c-inner03{
	max-width: 1000px;
	width: 90%;
	margin: 0 auto;
}


.txt-10{
	font-size: 1.0rem;
	line-height: 2;
}
.txt-11{
	font-size: 1.1rem;
	line-height: 2;
}
.txt-12{
	font-size: 1.2rem;
	line-height: 2;
}
.txt-16{
	font-size: 1.6rem;
	line-height: 2;
}
.txt-17{
	font-size: 1.7rem;
	line-height: 2;
}
.txt-20{
	font-size: 2.0rem;
	line-height: 1.4;
	font-weight: 500;
}
.txt-22{
	font-size: 2.2rem;
	line-height: 1.4;
	font-weight: 500;
}
.txt-24{
	font-size: 2.4rem;
	line-height: 1.4;
	font-weight: 500;
}
.txt-56{
	font-size: 5.6rem;
	line-height: 1.3;
	font-weight: 500;
}

/* header */
header{
	position: fixed;
	top: 0;
	left: 0;
	right:0;
	margin: auto;
	z-index: 100;
	width: 100%;
	height: 80px;
	transition: all .4s;
  /* background: #fff; */
}
header.scrolled{
  background: rgb(255 255 255 / 1);
}
header .h-inner{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  height: 100%;
}
header .h-inner .logo{
  width: 125px;
  margin-left: 35px;
  margin-right: 16px;
}
header .h-inner .link{
  border: 1px solid #ddd;
  padding: 6px;
}
header .h-inner .link p{
  line-height: 1.0;
  font-weight: 500;
  color: #006CB8;
}

/* footer */
footer{
  height: 110px;
  position: relative;
  align-content: center;
}
footer .footer-inner{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
footer .footer-inner .l-box{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
footer .footer-inner .l-box .logo{
  width: 125px;
  margin-right: 20px;
}
footer .footer-inner .l-box .link{
  border: 1px solid rgba(0, 108, 184, .2);
  padding: 10px 30px 10px 15px;
  position: relative;
}
footer .footer-inner .l-box .link::after{
  content: "";
  position: absolute;
  right: 13px;
  top: 50%;
  width: 8px;
  height: 8px;
  transform: translateY(-50%);
  background: url(../img/common/arw01.svg) no-repeat center / contain;
}
footer .footer-inner .l-box .link p{
  color: #006CB8;
  font-weight: 500;
  line-height: 1.0;
}
footer .footer-inner .copyright{
  font-weight: 400;
  color: #000;
}

/* 1100px */
@media screen and (max-width: 1100px) {
  .txt-10{
    font-size: 1.0vw;
  }
  .txt-11{
    font-size: 1.1vw;
  }
  .txt-12{
    font-size: 1.2vw;
  }
  .txt-16{
    font-size: 1.6vw;
  }
  .txt-17{
    font-size: 1.6vw;
  }
  .txt-20{
    font-size: 1.8vw;
  }
  .txt-22{
    font-size: 2.0vw;
  }
  .txt-24{
    font-size: 2.3vw;
  }
  .txt-56{
    font-size: 5.4vw;
  }

}

/* 768px */
@media screen and (max-width: 768px) {
  .pc{
    display: none !important;
  }
  .sp{
    display: block;
  }

  .txt-10{
    font-size: 1.0rem;
  }
  .txt-11{
    font-size: 1.1rem;
  }
  .txt-12{
    font-size: 1.1rem;
  }
  .txt-16{
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .txt-17{
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .txt-20{
    font-size: 1.6rem;
  }
  .txt-22{
    font-size: 1.6rem;
  }
  .txt-24{
    font-size: 1.8rem;
  }
  .txt-56{
    font-size: 3.0rem;
  }

/* header */
header{
	height: 60px;
}
header .h-inner{
}
header .h-inner .logo{
  width: 90px;
  margin-left: 5%;
  margin-right: 10px;
}
header .h-inner .link{
  padding: 3px 10px;
}

/* footer */
footer{
  height: 90px;
}
footer .footer-inner{
  justify-content: center;
  height: auto;
}
footer .footer-inner .l-box{
}
footer .footer-inner .l-box .logo{
  width: 90px;
  margin-right: 10px;
}
footer .footer-inner .l-box .link{
  padding: 5px 20px 5px 10px;
}
footer .footer-inner .l-box .link::after{
  right: 8px;
  width: 6px;
  height: 6px;
}
footer .footer-inner .copyright{
  margin-top: 10px;
  text-align: center;
  width: 100%;
}

}