@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

/*----------Typography----------*/
body {
	font-family: 'Noto Sans JP', sans-serif, -apple-system;
	-webkit-text-size-adjust: none;
	-webkit-appearance: none;
}

/*p {
	word-break: keep-all;
}*/

p, h1, h2, h3, h4 {
	margin-bottom: 0;
}

h1 {
	font-size: 35px;
}

h2 {
	font-size: 30px;
	font-weight: 600;
}

h3 {
	font-size: 25px;
	font-weight: 500;
}

h4 {
	font-size: 24px;
}

.bold {
	font-weight: bold;
}

.red {
	color: #E83F3B;
}

.darkblue {
	color: #324B63;
}

.mbtm03 {
	margin-bottom: 0.3rem;
}

.mbtm05 {
	margin-bottom: 0.5rem;
}

.mbtm1 {
	margin-bottom: 1rem;
}

.mbtm2 {
	margin-bottom: 2rem;
}

.mtop1 {
	margin-top: 1rem;
}

.mtop2 {
	margin-top: 2rem;
}

.mtop3 {
	margin-top: 3rem;
}

.pdtop2 {
	padding-top: 2rem;
}

.pdbtm2 {
	padding-bottom: 2rem;
}

hr {
	border-top: 3px solid rgba(0,0,0,.1) !important;
}
/*----------Global----------*/
.btn-wpaper a, .btn-wpaper2 a, .btn-contact a {
	text-decoration: none !important;
	color: white !important;
}

.row {
	margin-left: 0;
	margin-right: 0;
}

.bg-img {
	height: 100vh;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.flex-jccenter {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.section {
	padding: 60px 0px;
	text-align: center;
	position: relative;
}

.intro1 p, .intro2-text, .salon-logos p, .result-ttl, .summary p {
	font-size: 24px;
	font-weight: 600;
	/*word-break: keep-all;*/
}

.title-en {
	color: #08B1C2;
	font-weight: 600;
	font-size: 20px;
	margin-bottom: .5rem;
}

.red30 {
	color: #E83F3B;
	font-size: 30px;
	font-weight: 900;
}

.wordkp {
	word-break: keep-all;
}

.txjf {
	text-align: justify;
}

.aicenter {
	align-items: center;
}

.anchor {
	position: absolute;
	top: 0;
	left: 0;
}

a {

}

/*----------Header----------*/
.header {
	height: 100vh;
	width: 100%;
}

/*.header-content {
	position: absolute;
	top: 0;
	left: 15px;
	height: 100%;
	width: 100%;
	text-align: center;
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
}*/

header {
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.header-content {
	position: relative;
	height: 100%;
	width: 100%;
}

.header-logo {
	width: 180px;
}
.header-logo2 {
	display: none !important;
}

.navbar, .bg-light {
  background: #ffffff !important;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
	-webkit-box-shadow: 0 0px 5px 0 rgba(0, 0, 0, .5);
					box-shadow: 0 0px 5px 0 rgba(0, 0, 0, .5);
}

.hidden-navbar {
  background: transparent !important;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
	-webkit-box-shadow: none;
					box-shadow: none;
}

#navbarNav {
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}

.nav-item {
	padding: 0 5px;
}

.nav-link {
	color: black !important;
}

.hidden-link {
	color: white !important;
}

.nav-wpaper {
	background: #E83F3B;
	border-radius: 20px;
	padding-left: 2rem !important;
	padding-right: 2rem !important;
	color: white !important;
}

.header-content-row {
	-webkit-box-pack: space-evenly;
	    -ms-flex-pack: space-evenly;
	        justify-content: space-evenly;
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
	height: 100%;
}

.shadow-blue {
	color: white;
	text-shadow:2px 2px 0 #324B63, -2px -2px 0 #324B63,
						 -2px 2px 0 #324B63, 2px -2px 0 #324B63,
						 0px 2px 0 #324B63,  0 -2px 0 #324B63,
						 -2px 0 0 #324B63, 2px 0 0 #324B63;
}

.shadow-white {
	text-shadow:2px 2px 0 white, -2px -2px 0 white,
						 -2px 2px 0 white, 2px -2px 0 white,
						 0px 2px 0 white,  0 -2px 0 white,
						 -2px 0 0 white, 2px 0 0 white;
}

.txcenter {
	text-align: center;
}

.txib {
	display: inline-block;
}

.fw-black {
	font-weight: 900;
}

.header-content h1 {
	line-height: 1.3;
}

.speech {
  position: relative;
  display: inline-block;
  margin: 1.2rem 0;
  padding: 3px 20px;
  min-width: 120px;
  max-width: 100%;
  font-size: 20px;
  background: #FFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
	border-radius: 30px;
}

.speech:before {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top: 12px solid #FFF;
  z-index: 2;
}

.speech:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  z-index: 1;
}

.speech p {
  margin: 0;
  padding: 0;
}

.wreath {
	-webkit-appearance: none;
	width: 25%;
	height: auto;
	margin: 0 .5rem 0 .5rem;
}

.btn-wpaper {
	background: #E83F3B;
	color: white;
	font-weight: 600;
  font-size: 25px;
  border-radius: 30px;
  padding: .5rem 3rem;
	border-color: transparent;
}

.btn-wpaper:hover, .nav-wpaper:hover {
	background: #DB3E3A;
	color: white;
	border: none;
}

.hdbtn-mb {
	display: none;
}

.topleft-img {
	width: 100%;
	height: auto;
}

.content-right {
	position: relative;
	margin-bottom: -30px;
	padding: 0 !important;
}

.content-right .slick-prev, .content-right .slick-next, .content-right .slick-dots,
.hcontent-md-left .slick-prev, .hcontent-md-left .slick-next, .hcontent-md-left .slick-dots {
	display: none !important;
}

.content-right .slick-dotted.slick-slider, .hcontent-md-left .slick-dotted.slick-slider {
	margin-bottom: 0 !important;
}

.slick-slider {
	height: -webkit-fit-content !important;
	height: -moz-fit-content !important;
	height: fit-content !important;
  width: auto !important;
}

.topimg-fixed {
	position: absolute;
	top: 0;
	left: 0;
}

.banner {
	position: fixed;
	bottom: 0;
	width: 100%;
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
	text-align: center;
	z-index: 2
}

.banner-img {
	width: 35%;
	height: auto;
}

.banner-img2  {
	display: none;
}

.chtexts {
	margin: auto;
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}

.chtexts span {
	animation-name: chtexts;
	-webkit-animation-name: chtexts;
	animation-duration: 12s;
	-webkit-animation-duration: 12s;
	animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	opacity: 0;
}

.chtexts .chtexts1 {
}

.chtexts .chtexts2 {
	animation-delay:3s;
	-webkit-animation-delay:3s;
	position: absolute;
	left: 0;
}

.chtexts .chtexts3 {
	animation-delay:6s;
	-webkit-animation-delay:6s;
	position: absolute;
	left: 0;
}

.chtexts .chtexts4 {
	animation-delay:9s;
	-webkit-animation-delay:9s;
	position: absolute;
	left: 0;
}

@keyframes chtexts {
	0% {
		opacity: 0;
	}

	12.5% {
		opacity: 1;
	}

	37.5% {
		opacity: 0;
	}
	50% {
		opacity: 0;
	}
}

@-webkit-keyframes chtexts {
	0% {
		opacity: 0;
	}

	12.5% {
		opacity: 1;
	}

	37.5% {
		opacity: 0;
	}
	50% {
		opacity: 0;
	}
}

.header-content-md {
	display: none;
	position: relative;
  height: 45%;
}

.hcontent-md-right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}


/*----------Intro----------*/
.intro1 {
	background: #DBF5F8;
	text-align: center;
}

.pointbox {
	-webkit-box-pack: space-evenly;
	    -ms-flex-pack: space-evenly;
	        justify-content: space-evenly;
}

.point {
	width: 23%;
	height: auto;
}

/*----------intro2----------*/
.intro2 {
	background: #E9EDEE;
	text-align: center;
}

.intro2-img {
	width: 600px;
	height: auto;
}

/*----------Salon logos----------*/
.salon-logos {
	background: white;
	text-align: center;
}

.salon-logos .slick-list {
	overflow: hidden !important;
}

.logo-slider {
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
}

.salonlogo {
	width: 100px;
	height: auto;
}

.salon-logos .slick-slide {
	height: auto !important;
}

.slick-track
{
    display: flex !important;
    justify-content: center;
    align-items: center;
}

/*----------Result----------*/
.result {
	background: #45C7DB;
	text-align: center;
}

.result p {
	color: white;
}

.result-dtl {
	font-size: 20px;
  font-weight: 500;
  background: #324B63;
  margin: 0 auto 1rem auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 3rem;
  border-radius: 30px;
}

.resultbox {
	-webkit-box-pack: space-evenly;
	    -ms-flex-pack: space-evenly;
	        justify-content: space-evenly;
}

.result-img {
	width: 30%;
	height: auto;
}

/*----------problems----------*/
.problems {
	background: #E7F2F4;
	text-align: center;
}

.problems-img {
	width: 550px;
	height: auto;
}

.arrow-blue {
	border-top: 80px solid #E7F2F4;
	border-left: 50vw solid transparent;
	border-right: 50vw solid transparent;
}

/*----------trends----------*/
.trends {
	background: white;
	text-align: center;
}

.alertsign {
	width: 40px;
	height: auto;
}

.trends-ttl {
	border-bottom: 3px dashed black;
	padding-bottom: 1rem;
	padding-top: .5rem;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: auto;
	text-align: left;
}

.trends-img {
	width: 550px;
	height: auto;
}

.arrow-white {
	border-top: 80px solid white;
	border-left: 50vw solid #45C7DB;
	border-right: 50vw solid #45C7DB;
}

/*----------summary----------*/
.summary {
	text-align: center;
	background: #45C7DB;
}

.summary p {
	color: white;
}

.logobox {
	background: white;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
  margin: 2rem auto 2rem auto;
	border-radius: 15px;
	-webkit-box-shadow: 0 0 15px 1px #6c757d;
	        box-shadow: 0 0 15px 1px #6c757d;
}

.logobox .row {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.logorow1 {
	padding: 1.5rem 5rem 0 5rem;
	align-items: center;
}

.logorow2 {
	padding: 1rem 5rem 1.5rem 5rem;
	align-items: center;
}

.summarylogo1 {
	width: 250px;
	height: auto;
	margin: 0 2rem;
}

.summarylogo2 {
	width: 250px;
	height: auto;
}

.shadow-redwhite {
	color: #E83F3B;
	text-shadow:2px 2px 0 white, -2px -2px 0 white,
						 -2px 2px 0 white, 2px -2px 0 white,
						 0px 2px 0 white,  0 -2px 0 white,
						 -2px 0 0 white, 2px 0 0 white;
	font-size: 40px;
	font-weight: 900;
}

.shadow-redwhite-sm {
	color: #E83F3B;
	text-shadow:2px 2px 0 white, -2px -2px 0 white,
						 -2px 2px 0 white, 2px -2px 0 white,
						 0px 2px 0 white,  0 -2px 0 white,
						 -2px 0 0 white, 2px 0 0 white;
	font-weight: 900;
}

.whitedash {
	border-bottom: 4px dashed white;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: auto;
}

/*----------product----------*/
.product {
	text-align: center;
	background: white;
}

.productbox {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.bg-blue {
	background: #E7F2F4;
}

.productbox .row {
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.product-txt {
	text-align: left;
}

.product h3 {
	margin-bottom: 1rem;
}

.product-num {
	font-size: 80px;
	color: #45C7DB;
	font-weight: 900;
	line-height: 1;
	margin-bottom: 1rem;
}

.product-img {
	width: auto;
	height: 300px;
}


/*----------4----------*/
.compare {
	background: #E7F2F4;
}

.compare table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 70%;
  table-layout: fixed;
	text-align: center;
}

.compare table th {
	font-size: 18px;
	padding: .5rem 0;
	border-right: 2px solid #D9D9D9;
}

.compare table thead tr{
  background-color: #123C7E;
  color:#fff;
}

.compare table tr {
  background-color: #fff;
  border: 2px solid #D9D9D9;
}

.compare table tbody tr {
	height: 110px;
}

.compare table td {
  padding: .5rem 1rem;
  border-right: 2px solid #D9D9D9;
	background: white;
}

.compare table tbody th {
  border-right: 2px solid #D9D9D9;
	background: #EFEFEF;
	padding: .5rem;
}

.price{
  color: #000;
  font-size: 16px;
}

.price p {
	word-break: normal !important;
}

.pricemark {
	color: #BC271A;
	font-size: 30px;
}

.thead-ylw {
	background: #EBC351;
	border: 5px solid #EBC351;
}

.ylwline-left {
	border-left: 5px solid #EBC351;
}

.ylwline-btm {
	border-bottom: 5px solid #EBC351;
}

/*----------features----------*/
.features {
	padding-bottom: 0 !important;
}

.features .container {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.features .row {
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: space-evenly;
	    -ms-flex-pack: space-evenly;
	        justify-content: space-evenly;
}

.bg-container-white {
	background: white;
}

.bg-container-blue {
	background: #E7F2F4;
}

.productname {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto 2rem auto;
	background: #E83F3B;
	border-radius: 30px;
	color: white;
	font-size: 20px;
	font-weight: 600;
	padding: .3rem 8rem;
	display: block;
}

.features-box {
	background: white;
	-webkit-box-shadow: 0 0 10px gray;
	        box-shadow: 0 0 10px gray;
	width: 45%;
	padding: 1.5rem 1rem;
	position: relative;
}

/*.features-box:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.features-content {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  line-height:100%;
  height:100%;
  text-align: center;
  display: flex;
	flex-direction: column;
  align-items: center;
  justify-content: center;
}*/

.features-num {
	width: 50px;
	height: auto;
}

.features-img {
	width: 95%;
	height: 300px;
	-o-object-fit: contain;
	   object-fit: contain;
}

.features p {
	word-break: normal;
}

.name-blue {
	background: #004AAD;
}

.name-lightblue {
	background: #45C7DB;
}

.name-orange {
	background: #F5A826;
}

/*----------cases----------*/
.cases .row {
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}

.cases .slick-slide {
	height: auto !important;
}

.cases h3 {
	background: #324B63;
  color: white;
  font-size: 18px;
  font-weight: 600;
  padding: .5rem 0;
}

.casebox {
	-webkit-box-shadow: 0 0 10px grey;
	        box-shadow: 0 0 10px grey;
  margin: 2rem;
}

.graphbox {
	margin: 20px 0 10px 0;
}

.casegraph {
	margin: auto;
	width: 75%;
	height: auto;
}

.graphname {
	background: #324B63;
  color: white;
  width: 75%;
  margin: auto;
  margin-top: 5px;
}


.slick-prev:before, .slick-next:before {
	color: #495057 !important;
}

.cases .slick-prev {
	left: 0 !important;
}

.cases .slick-next {
	right: 0 !important;
}

.slick-slide {
  opacity: .2;
}

.slick-active {
    opacity: 1;
}
.slick-current {
    opacity: 1;
}

/*----------cutmers' voice----------*/
.cvoice {
	background: #E7F2F4;
}

.cvoice p {
	word-break: normal;
}

.cvoice .container {
	background: white;
  -webkit-box-shadow: 0 0 10px grey;
          box-shadow: 0 0 10px grey;
  padding: 2rem;
  margin-top: 3rem;
}

.cvoice-img {
	width: 400px;
	height: auto;
}

.cvoice h3 {
	border-bottom: 5px solid #45C7DB;
	padding-bottom: 10px;
}

.cvoicebox {
	text-align: justify;
}

.tempobox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.cvoice-tempo {
	color: #45C7DB;
  border: 2px solid #45C7DB;
  border-radius: 30px;
  padding: 2px 0;
  font-weight: 600;
  background: white;
  margin-right: 15px;
	width: 120px;
  text-align: center;
}

.cvoice-bfr, .cvoice-aft {
	color: white;
	border-radius: 30px;
	padding: 2px 0;
	font-weight: 600;
	background: #45C7DB;
	width: 120px;
  text-align: center;
	margin-top: 1rem;
}

/*----------contact----------*/
.contact {
	padding: 60px 0 0 0;
	text-align: center;
}

.btn-wpaper2 {
	background: #E83F3B;
	color: white;
	font-weight: 600;
  font-size: 25px;
  border-radius: 30px;
  padding: .5rem 5rem;
	border-color: transparent;
}

.btn-wpaper2:hover {
	background: #DB3E3A;
	color: white;
}

.contactbox {
	background: #fff;
	padding: 0 0 60px 0;
	margin-top: 30px;
}

.phone i, .phonenumber {
	display: inline-block;
	font-size: 35px;
	font-weight: 600;
	text-decoration:none !important;
	color: black !important;
}

.phone i {
	margin-right: 5px;
}

.phonehour {
	font-size: 20px;
	font-weight: 600;
}

.btn-contact {
	background: #e83f3b;
	color: white;
	font-weight: 600;
  font-size: 25px;
  border-radius: 30px;
  padding: .5rem 5rem;
	border-color: transparent;
}

.btn-contact:hover {
	background: #ca3733;
	color: white;
}

.contact .row {
	-webkit-box-pack: space-evenly;
	    -ms-flex-pack: space-evenly;
	        justify-content: space-evenly;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

/*----------footer----------*/
.footer {
	background: #2D363F;
}

.footerlogo {
	width: 300px;
	height: auto;
}
