/* CSS Document */

@charset "UTF-8";

/*---------------------------------
root
-----------------------------------*/
:root {
  --color-gray: #A5A5A5;
  --color-light-gray: #FAFAFA;
  --line-gray: #707070;
  --color-white: #ffffff; 
}

/*カラー*/
.gray{
	color:var(--color-gray);
}

.light-gray{
	color:var(--color-light-gray);
}

.line-gray{
	color:var(--line-gray);
}

.white{
	color:var(--color-white);
}

/*NotoSansJP*/
@font-face {
  font-family: 'notosansjp';
  src: url("../fonts/NotoSansJP-Bold.ttf") format('truetype');
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans", sans-serif;
  src: url("../fonts/OpenSans-Bold.ttf") format('truetype');
  font-weight: 700;
  font-display: swap;
}


/*---------------------------------
html,body
-----------------------------------*/
.grecaptcha-badge { visibility: hidden; }

/* ルートのフォントサイズを10px相当に設定（デフォルト16pxの62.5%） */
html {
  font-size: 62.5%; /* 1rem = 10px */
}

body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  box-sizing: border-box;
  margin-top: 0px !important;
  font-size: 1.6rem; /* 16px */
  line-height: 1.65;
  color: #111111;
  text-spacing-trim: space-all;
}

.wrap {
  width: 100%;           
  max-width: 100%;
  margin: 0 auto;
  background-color: #fff; 
}

.fonts-noto{
    font-family: "notosansjp", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: bold;
}

.fonts-en{
    font-family: "Open Sans", sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: bold;
}


/*---------------------------------
フォントサイズ
-----------------------------------*/
.tx-42{ font-size: 4.2rem; }
.tx-32{ font-size: 3.2rem; }
.tx-36{ font-size: 3.6rem; }
.tx-26{ font-size: 2.6rem; }
.tx-18{ font-size: 1.8rem; }
.tx-16{ font-size: 1.6rem; }
.tx-14{ font-size: 1.4rem; }


/*---------------------------------
余白
-----------------------------------*/

/* margin */
.mb-10{
	margin-bottom: 1rem;	
}

/* padding */
.mb-10{
	padding-bottom: 1rem;	
}

/*---------------------------------
タグ
-----------------------------------*/
section{
	
}

li{
	list-style: none;
}

img {
  max-width: 100%;  /* 親要素より大きくならない */
  height: auto;      /* 縦横比を保持 */
  display: block;    /* 余計な隙間を消す */
}

/*---------------------------------
テキスト
-----------------------------------*/
.bold{
	font-weight: bold;
}

.center{
	margin: 0 auto;
}

.tx-center{
	text-align: center;
}

/*---------------------------------
幅
-----------------------------------*/
.main-in {
  padding: 0 50px;
}

/*---------------------------------
整列
-----------------------------------*/
.flex{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	-webkit-display: flex;
	-moz-display: flex;
	-ms-display: flex;
	-o-display: flex;
	display: flex;
}