/* -------------------- 共通 -------------------- */
html {
 -webkit-text-size-adjust: 100%;
}
body {
  /* font-family: "Noto Sans JP","ヒラギノ角ゴシック","Hiragino Sans","メイリオ","Yu Gothic",sans-serif; */
	-webkit-font-smoothing: antialiased;
  /* font-family: 'Noto Sans JP', sans-serif; */
  font-family: "Noto Sans JP", sans-serif;
	-webkit-font-smoothing: antialiased;
  color: var(--common_text);
  background: var(--common_bg);
  letter-spacing: 1px;
  font-weight: 600;
}
a {
	text-decoration: none;
	color: var(--common_text);
  display: block;
  transition: 0.3s;
}
a:hover {
	opacity: 0.8;
}
img {
	display: block;
  width: 100%;
  font-family: 'object-fit: cover';
  object-fit: cover;
}
ul {
	list-style: none;
}
iframe {
  width: 100%;
  height: 100%;
}
video {
  width: 100%;
  height: 100%;
}
h2 {
  font-weight: 700;
}
h3,
h4 {
  font-weight: 600;
}

.anchor_init {
  text-decoration: underline;
  display: inline;
  color: #551a8b;
  color: #fff;
}

.pc_container {
  position: relative;
}

.overflow_hidden {
  overflow: hidden;
}

.grecaptcha-badge {
  visibility: hidden;
}

/* --------------------------------------------------
変数
-------------------------------------------------- */
:root {
	--common_bg: #000;
	--common_text: #fff;
	--black_text: #000;
	--corp_color: #00d2e8;
	--txt_gray: #767676;
}
:root {
  /* --ease_in_out_quart: cubic-bezier(0.76,0,0.24,1);
  --ease_out_expo: cubic-bezier(0.16,1,0.3,1);
  --ease_in_out_circ: cubic-bezier(0.85,0,0.15,1);
  --ease_out_cubic: cubic-bezier(0.33,1,0.68,1);
  --ease_in_out_quint: cubic-bezier(0.83,0,0.17,1); */
}


/* -------------------- フォント -------------------- */
.fontMincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 600;
}
.fontAvenir {
  font-family: "Avenir Next",Avenir,Lato,Arial,Ebrima,Modern,sans-serif;
  font-weight: 500;
}
.font_roboto {
  font-family: 'Roboto', sans-serif;
}

/* -------------------- 文字カラー  -------------------- */
.txt_white {
  color: var(--common_text);
}
.txt_white a {
  color: var(--common_text);
}
.txt_green {
	color: var(--corp_color);
}
.txt_gray {
	color: #767676;
}
.txt_gray a {
	color: #767676;
}

/* -------------------- 背景カラー  -------------------- */
.bg_corp {
	background: var(--corp_color);
}
.bg_white {
	background: var(--common_text);
}
.bg_green {
	background: var(--corp_color);
}
.bg_pink {
	/* background: #E66D63; */
	background: var(--corp_color);
}
.bg_orange {
	background: #F0AA67;
}
.bg_lg {
	background: #000;
}
.bg_bread {
	background: #666;
}
.bg_light_green {
	background: #E1F9E5;
}
.bg_new {
	background: #E66D63;
}

/* sns */
.bg_line {
  background: #0acf43;
}
.bg_twitter {
  background: #DA1725;
}
.bg_insta {
  background: #666;
}

/* -------------------- 共通アイテム -------------------- */
.side_padding {
  padding-right: 25px;
  padding-left: 25px;
  box-sizing: border-box;
}
.sc_end_margin {
  margin-bottom: 50px;
}
.bg_sc_padding {
  padding-top: 50px;
  padding-bottom: 50px;
}

/* 見出し1 */
.head_01 {
  font-size: 20px;
  margin-bottom: 20px;
  position: relative;
  line-height: 28px;
}
.head_01 .en {
  font-size: 22px;
  font-weight: 700;
  position: relative;
  margin-right: 17px;
}
.head_01 .en:after {
  content: '';
  height: 0.7em;
  width: 1px;
  background: var(--common_bg);
  position: absolute;
  top: 7px;
  right: -12px;
}
.head_01 .jp {
  font-size: 13px;
  margin-top: 6px;
  font-weight: 500;
}

/* 見出し2 */
.head_02 {
	position: relative;
	font-size: 16px;
	line-height: 26px;
	padding: 10px 20px;
	margin-bottom: 10px;
}
.head_02:before,
.head_02:after {
	content: '';
	width: 15px;
	height: 15px;
	position: absolute;
}
.head_02:before {
	border-left: solid 3px var(--corp_color);
	border-top: solid 3px var(--corp_color);
	top: -1px;
	left: -1px;
}
.head_02:after {
	border-right: solid 3px var(--corp_color);
	border-bottom: solid 3px var(--corp_color);
	bottom: -1px;
	right: -1px;
}

/* 常用のテキスト */
.regular_txt {
  font-size: 14px;
  line-height: 22px;
  letter-spacing: 0px;
}

.sale_price {
  color: #f00;
  font-weight: 800;
}

/* ボタン大きさ */
.common_btn {
  width: 100%;
  height: 45px;
  line-height: 45px;
  max-width: 380px;
  text-align: center;
  border-radius: 10px;
  box-sizing: border-box;
  position: relative;
}

/* モバイル・PC表示非表示 */
.pc {
  display: none;
}

/* -------------------- viewmoreボタン -------------------- */
.view_more_btn {
  background: var(--corp_color);
  border: 1px solid var(--corp_color);
  font-size: 14px;
  margin: 0 auto;
  z-index: 2;
  overflow: hidden;
  font-weight: 700;
}
.view_more_btn a {
  color: var(--common_text);
  position: relative;
  z-index: 1;
}
.view_more_btn:after {
  content: '';
  z-index: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  background: var(--common_text);
  width: 0px;
  height: 0px;
  border-radius: 50%;
  pointer-events: none;
}

/* -------------------- ホバー処理 -------------------- */
/* .view_more_btn,
.view_more_btn:after,
.view_more_btn a,
.view_more_btn a:after {
  transition: 0.4s;
}
.view_more_btn a:hover {
  color: var(--corp_color);
}
.view_more_btn:hover:after {
  width: 120%;
  padding-top: 120%;
} */
/* 透過 */
/* .hvrOpa {
  transition: 0.3s;
}
.hvrOpa:hover {
  opacity: 0.7;
} */
/* 円形 */
/* .hvrCircle,
.hvrCircle:after {
  transition: 0.4s;
}
.hvrCircle {
  position: relative;
  overflow: hidden;
}
.hvrCircle:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  background: rgba(255,255,255,0.1);
  width: 0px;
  height: 0px;
  border-radius: 50%;
  pointer-events: none;
}
.hvrCircle:hover:after {
  width: 120%;
  padding-top: 120%;
} */

/****************************** tablet ******************************/
@media (min-width: 600px){

  /* -------------------- 共通アイテム -------------------- */
  .side_padding {
    padding-right: 50px;
    padding-left: 50px;
  }
  .sc_end_margin {
    margin-bottom: 100px;
  }
  .bg_sc_padding {
  	padding-top: 100px;
  	padding-bottom: 100px;
  }

  .pc_container {
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
  }

  .head_01 {
    font-size: 28px;
    margin-bottom: 30px;
    line-height: 42px;
  }

  /* 常用のテキスト */
  .regular_txt {
    font-size: 16px;
    line-height: 28px;
  }

  /* ボタン大きさ */
  .common_btn {
    height: 50px;
    line-height: 50px;
  }

  /* VIEW MOREボタン */
  .view_more_btn {
    font-size: 16px;
  }
}

/****************************** PC ******************************/
@media (min-width: 1025px){

  /* -------------------- 共通アイテム -------------------- */
  .side_padding {
    padding-right: 0px;
    padding-left: 0px;
  }

  /* モバイル・PC表示非表示 */
  .mb {
    display: none;
  }
  .pc {
    display: block;
  }
}
