/* --------------------------
   Default Styling
----------------------------- */

*,*::before, *::after{
	box-sizing: border-box;
}

html{
	scroll-bihavior: smooth;
}

body {
	background: #ffffff;
	color: #2d2d2d;
	font: 100%/1.5;
	  font-family: 'Zen Maru Gothic', sans-serif;
	  font-weight: 400;
	  font-style: normal;
	  position: relative;
	  word-wrap: break-word;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	margin-top: 0;
	font-size: 1em;
	line-height: 1.0;
	font-weight: normal;
}

ul{
	margin: 0;
	padding-left: 0;
	list-style: none;
}

p{
	line-height: 1.0;
	margin: 0;
	padding: 0;
	font-size: 20px;
}

@media only screen and (max-width: 767px) {
p{
	font-size: 18px;
}
}

@media only screen and (max-width: 600px) {
p{
	font-size: 16px;
}
}


@media only screen and (max-width: 420px) {
p{
	font-size: 15px;
}
}

/* 行間の指定 */

.lh_14{
	line-height: 1.4;

}

.lh_18{
	line-height: 1.8;

}

.lh_22{
	line-height: 2.0;

}


@media only screen and (max-width: 600px) {

.lh_14{
	line-height: 1.2;

}

.lh_18{
	line-height: 1.6;

}

.lh_22{
	line-height: 1.8;

}


}

figure{
	margin: 0;
}

img{
	max-width: 100%;
}

.tx_center{
	text-align: center;
        margin:0;
        padding: 0;
}

.tx_left{
	text-align: center;
        margin:0;
        padding: 0;
}

a{
	text-decoration: none;
	color: #2d2d2d;
	cursor: pointer;
}

a:hover,
a:focus{
	transition: .5s;
}

a.clear:hover,
a.clear:focus{
	transition: .5s;
        opacity: 0.3;
}

a, input, textarea{
	transition: all 0.15s ease-in-out;
}

input[type="submit"]:hover{
	cursol: pointer;
}

.dsp_pc{
	display: block;
}


.dsp_sp{
	display: none;
}

@media screen and (max-width: 600px){

.dsp_pc{
	display: none;
}
.dsp_sp{
	display: block;
}

}


/*PCで電話がかからないようにする*/

@media (min-width: 969px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

/* wow.jsに必要　*/
.box {
  animation-fill-mode: forwards;
}


body.preload .wow.fadeIn {
	opacity: 0 !important;
}


/*Reusable Classes--*/

.wrapper{
  width: 1280px;
  margin: 0 auto;
}


@media screen and (max-width: 1280px){
.wrapper{
  max-width: 960px;
  width: 90%;
  margin: 0 auto;
}
}


@media screen and (max-width: 768px){
.wrapper{
  max-width: 600px;
  width: 90%;
  margin: 0 auto;
}
}


.button-primary,
.button-secondary{
	display: inline-block;
	padding: 10px 15px;
	border: none;
	border-radius: 3px;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 1px;
	text-decoration: none;

}

.social-links{
	display: flex;
    flex-wrap: wrap;
    font-size: 2rem;
}

.social-links li+li{
	margin-left: 20px;
}



/* font */
// <uniquifier>: Use a unique and descriptive class name


.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}
