
/*
Theme Name: 基本テンプレート
Description: bassテンプレート
*/



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

._Light {
  font-weight: 300!important;
}
._Regular {
  font-weight: 400!important;
}
._Bold {
  font-weight: 700!important;
}
._Black {
  font-weight: 900!important;
}


/* 基本設定
---------------------------------------------------------- */

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  width: 100%;
  height: 100%;
  font-size: 10px;
}
@media screen and (max-width: 1024px){
  html {
    font-size: 0.977vw;
  }
}
@media screen and (max-width: 769px){
  html {
    font-size: 1.300vw;
  }
}
@media screen and (max-width: 480px){
  html {
    font-size: 2.083vw;
  }
}

body {
  width: 100%;
  height: 100%;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  color: #3d3a39;
}


header, footer {
	width: 100%;
}

a {
  text-decoration: none;
  color: #3d3a39;
}

li {
  list-style: none;
}

img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
}


p {
  word-break: normal;
  /*
  text-align: justify;
  word-break: break-all;
  */
}



/* 画像透過
---------------------------------------------------------- */
a img:hover {
  transition: 1.0s;
  opacity: 0.5;
}


/* レスポンシブ対応
---------------------------------------------------------- */
._sp {
  display: none;
}
@media screen and (max-width: 768px) {
  ._pc {
      display: none!important;
  }
  ._sp {
      display: block;
  }
}

/* telリンク（PC無効） */
a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 480px) {
  a[href^="tel:"] {
      pointer-events: auto;
  }
}


/* 余白排除
---------------------------------------------------------- */
#wrap {
  width: 100%;
  overflow: hidden;
}


/* 共通レイアウト
---------------------------------------------------------- */
._flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

/* 順送り */
._row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}

/*　中央寄せ */
._flexCenter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/* 左寄せ */
._flexRow {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
}

/* 逆配置 */
._reverse {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}

@media screen and (max-width: 768px) {
  ._flex, ._reverse {
    display: block;
    width: 100%;
  }
}



/* テキスト中央 */
._center {
  text-align: center!important;
}


/* テキスト中揃え解除 */
._justify {
  text-align: justify!important;
}


/* position指定 */
._relative {
  position: relative;
}


/* 横スクロール
---------------------------------------------------------- */
table {
  border-collapse: collapse;
}

@media screen and (max-width: 768px){
  .scrollBox {
    overflow-x: auto;
  }
}