/*
	* Bootstrap 基本部分カスタム用CSS
	xl-1400(max-1399)
	lg-992(max-991)
	md-768(max-767)
	sm-576(max-575)
 	 
	-------------------
	全体のフォント設定を上書き
	印刷時の調整
	常設フォントファミリー
	リンク色設定を上書き
	カスタムコンテナサイズ サイトに合わせてサイズ調整
	marginセット
	フォントサイズ 通常テキスト
	フォントサイズ 見出しテキスト
	フォントカラー設定追加
	文字間隔設定追加
	行間隔設定追加
	縁付フォント
	注釈時、2行目以降先頭に1文字余白
	先頭の一文字だけフォントカラー変更
	リストの装飾
	サイズごと改行
	サイズごと非表示
	画像のレスポンシブサイズ上書き
	画像のレスポンシブ仕様（object_fit）
	画像ホバー時に少し拡大
	幅のパーセンテージ指定（5％刻み）
	アンカーポイント調整
	-------------------
	@media screen and (max-width: 1539px) {}
	@media screen and (max-width: 1399px) {}
	@media screen and (max-width: 991px) {}
	@media print {}
	@media screen and (max-width: 767px) {}
	-------------------
	タグ参考
	display: -webkit-flex;
	display: flex;
	flex-direction: row-reverse; 左から並べる
  flex-direction: column; 上から並べる
  flex-direction: column-reverse; 下から並べる
	justify-content: center; 中央揃え
	justify-content: space-between; 均等割
	justify-content: space-around; 均等割/
	justify-content: flex-end; 右揃え
	flex-wrap: wrap; 折返し・下へ
	flex-wrap: wrap-reverse; 折返し・上へ
	
	:first-child
	:last-child
	:nth-child(n)
	
	::before{
	content: '';

	border-radius: 0px;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;

	transform: rotate(45deg);
	transform: skew(45deg);
	transform: skewX(45deg);
*/

/* 全体のフォント設定を上書き */
	html{font-size: 16px;}/* 基準サイズ */
	body{
		font-family: 'Noto Sans JP', 'メイリオ', Meiryo, '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
		font-size: 1rem;/* 基準サイズ等倍 */
		font-weight: 400;
		color: #1f1f1f;
		letter-spacing: 0.05em;
		line-height: 1.8;
		word-break: normal;
	}
	.text-original{
		color: #1f1f1f;
	}
	@media print {
		body{
			font-size: 0.875rem;/* 14px */
			line-height: 1.6;
			letter-spacing: 0em;
		}
	}
	@media screen and (max-width: 991px) {
		body{
			font-size: 0.937rem;/* 15px */
			line-height: 1.6;
		}
	}


/* 印刷時の調整 */
	@page {
	  margin: 8mm;
	  size: A4 portrait;
	}


/* 常設フォントファミリー */
	.cus-ft-sans{font-family: 'Noto Sans JP', sans-serif;}
	.cus-ft-serif{font-family: 'Noto Serif JP', sans-serif;}
	.cus-ft-zenkaku{font-family: "Zen Kaku Gothic New", sans-serif;}
	.cus-ft-roboto{font-family: "Roboto", sans-serif;}


/* リンク色設定を上書き */
	a{color: #7431b2;transition: all 0.4s ease-out;}
	a:hover{color: #7431b2;transition: all 0.4s ease-out;}

	.link-opacity-25{transition: all 0.4s ease-out !important;}
	.link-opacity-50{transition: all 0.4s ease-out !important;}
	.link-opacity-75{transition: all 0.4s ease-out !important;}
	.link-opacity-25:hover{opacity: 0.25 !important;transition: all 0.4s ease-out !important;}
	.link-opacity-50:hover{opacity: 0.50 !important;transition: all 0.4s ease-out !important;}
	.link-opacity-75:hover{opacity: 0.75 !important;transition: all 0.4s ease-out !important;}


/* カスタムコンテナサイズ サイトに合わせてサイズ調整 */
	.cus-container-wide{
		margin-left: auto;
		margin-right: auto;
		width: 1540px;
	}
	.cus-container{
		margin-left: auto;
		margin-right: auto;
		width: 1400px;
	}
	.cus-row{/* rowタグの余白削除 */
		overflow: hidden;
		margin-left: 0px;
		margin-right: 0px;
	}
	@media screen and (max-width: 1539px) {.cus-container-wide{width: 96%;}}
	@media screen and (max-width: 1399px) {.cus-container,.cus-container-wide{width: 96%;}}
	@media print {.cus-container,.cus-container-wide{width: 94%;}}
	@media screen and (max-width: 767px) {.cus-container,.cus-container-wide{width: 94%;}}


/* marginセット */
	.cus-mb-200{margin-bottom: 200px;}
	@media screen and (max-width: 1539px) {.cus-mb-200{margin-bottom: 180px;}}
	@media screen and (max-width: 991px) {.cus-mb-200{margin-bottom: 160px;}}
	@media screen and (max-width: 767px) {.cus-mb-200{margin-bottom: 140px;}}
	@media print {.cus-mb-200{margin-bottom: 100px;}}
	@media screen and (max-width: 575px) {.cus-mb-200{margin-bottom: 100px;}}

	.cus-mb-160{margin-bottom: 160px;}
	@media screen and (max-width: 1539px) {.cus-mb-160{margin-bottom: 150px;}}
	@media screen and (max-width: 991px) {.cus-mb-160{margin-bottom: 130px;}}
	@media screen and (max-width: 767px) {.cus-mb-160{margin-bottom: 100px;}}
	@media print {.cus-mb-160{margin-bottom: 60px;}}
	@media screen and (max-width: 575px) {.cus-mb-160{margin-bottom: 80px;}}

	.cus-mb-120{margin-bottom: 120px;}
	@media screen and (max-width: 1539px) {.cus-mb-120{margin-bottom: 100px;}}
	@media screen and (max-width: 991px) {.cus-mb-120{margin-bottom: 80px;}}
	@media screen and (max-width: 767px) {.cus-mb-120{margin-bottom: 60px;}}
	@media print {.cus-mb-120{margin-bottom: 40px;}}
	@media screen and (max-width: 575px) {.cus-mb-120{margin-bottom: 50px;}}

	.cus-mb-100{margin-bottom: 100px;}
	@media screen and (max-width: 1539px) {.cus-mb-120{margin-bottom: 85px;}}
	@media screen and (max-width: 991px) {.cus-mb-120{margin-bottom: 70px;}}
	@media screen and (max-width: 767px) {.cus-mb-120{margin-bottom: 55px;}}
	@media print {.cus-mb-120{margin-bottom: 35px;}}
	@media screen and (max-width: 575px) {.cus-mb-120{margin-bottom: 45px;}}

	.cus-mb-80{margin-bottom: 80px;}
	@media screen and (max-width: 1539px) {.cus-mb-80{margin-bottom: 70px;}}
	@media screen and (max-width: 991px) {.cus-mb-80{margin-bottom: 60px;}}
	@media screen and (max-width: 767px) {.cus-mb-80{margin-bottom: 50px;}}
	@media print {.cus-mb-80{margin-bottom: 30px;}}
	@media screen and (max-width: 575px) {.cus-mb-80{margin-bottom: 40px;}}

	.cus-mb-50{margin-bottom: 50px;}
	@media screen and (max-width: 1539px) {.cus-mb-50{margin-bottom: 40px;}}
	@media screen and (max-width: 991px) {.cus-mb-50{margin-bottom: 35px;}}
	@media screen and (max-width: 767px) {.cus-mb-50{margin-bottom: 30px;}}
	@media print {.cus-mb-50{margin-bottom: 20px;}}
	@media screen and (max-width: 575px) {.cus-mb-50{margin-bottom: 25px;}}

	.cus-mb-30{margin-bottom: 30px;}
	@media screen and (max-width: 1539px) {.cus-mb-30{margin-bottom: 25px;}}
	@media screen and (max-width: 991px) {.cus-mb-30{margin-bottom: 20px;}}
	@media screen and (max-width: 767px) {.cus-mb-30{margin-bottom: 20px;}}
	@media print {.cus-mb-30{margin-bottom: 20px;}}
	@media screen and (max-width: 575px) {.cus-mb-30{margin-bottom: 20px;}}


/* フォントサイズ 通常テキスト */
	.cus-fs-8{font-size: 0.5rem;}
	.cus-fs-7{font-size: 0.5625rem;}
	.cus-fs-6{font-size: 0.625rem;}
	.cus-fs-5{font-size: 0.687rem;}
	.cus-fs-4{font-size: 0.75rem;}
	.cus-fs-3{font-size: 0.812rem;}
	.cus-fs-2{font-size: 0.875rem;}
	.cus-fs-1{font-size: 0.937rem;}
	.cus-fs0{font-size: 1rem;}
	.cus-fs1{font-size: 1.0625rem;}
	.cus-fs2{font-size: 1.125rem;}
	.cus-fs3{font-size: 1.1875rem;}
	.cus-fs4{font-size: 1.25rem;}
	.cus-fs5{font-size: 1.3125rem;}
	.cus-fs6{font-size: 1.375rem;}
	.cus-fs7{font-size: 1.4375rem;}
	.cus-fs8{font-size: 1.5rem;}
	.cus-fs9{font-size: 1.5625rem;}
	.cus-fs10{font-size: 1.625rem;}
	@media screen and (max-width: 991px) {
		.cus-fs-8{font-size: 0.5rem;}
		.cus-fs-7{font-size: 0.5rem;}
		.cus-fs-6{font-size: 0.5625rem;}
		.cus-fs-5{font-size: 0.625rem;}
		.cus-fs-4{font-size: 0.687rem;}
		.cus-fs-3{font-size: 0.75rem;}
		.cus-fs-2{font-size: 0.812rem;}
		.cus-fs-1{font-size: 0.875rem;}
		.cus-fs0{font-size: 0.937rem;}
		.cus-fs1{font-size: 1rem;}
		.cus-fs2{font-size: 1.0625rem;}
		.cus-fs3{font-size: 1.125rem;}
		.cus-fs4{font-size: 1.1875rem;}
		.cus-fs5{font-size: 1.25rem;}
		.cus-fs6{font-size: 1.3125rem;}
		.cus-fs7{font-size: 1.375rem;}
		.cus-fs8{font-size: 1.4375rem;}
		.cus-fs9{font-size: 1.5rem;}
		.cus-fs10{font-size: 1.5625rem;}
	}
	@media print {
		.cus-fs-8{font-size: 0.5rem;}
		.cus-fs-7{font-size: 0.5rem;}
		.cus-fs-6{font-size: 0.5rem;}
		.cus-fs-5{font-size: 0.5rem;}
		.cus-fs-4{font-size: 0.5625rem;}
		.cus-fs-3{font-size: 0.5625rem;}
		.cus-fs-2{font-size: 0.625rem;}
		.cus-fs-1{font-size: 0.687rem;}
		.cus-fs0{font-size: 0.75rem;}
		.cus-fs1{font-size: 0.812rem;}
		.cus-fs2{font-size: 0.875rem;}
		.cus-fs3{font-size: 0.937rem;}
		.cus-fs4{font-size: 1rem;}
		.cus-fs5{font-size: 1.0625rem;}
		.cus-fs6{font-size: 1.125rem;}
		.cus-fs7{font-size: 1.3125rem;}
		.cus-fs8{font-size: 1.25rem;}
		.cus-fs9{font-size: 1.3125rem;}
		.cus-fs10{font-size: 1.375rem;}
	}
	@media screen and (max-width: 767px) {
		.cus-fs-8{font-size: 0.5rem;}
		.cus-fs-7{font-size: 0.5rem;}
		.cus-fs-6{font-size: 0.5rem;}
		.cus-fs-5{font-size: 0.5rem;}
		.cus-fs-4{font-size: 0.5625rem;}
		.cus-fs-3{font-size: 0.5625rem;}
		.cus-fs-2{font-size: 0.625rem;}
		.cus-fs-1{font-size: 0.687rem;}
		.cus-fs0{font-size: 0.75rem;}
		.cus-fs1{font-size: 0.812rem;}
		.cus-fs2{font-size: 0.875rem;}
		.cus-fs3{font-size: 0.937rem;}
		.cus-fs4{font-size: 1rem;}
		.cus-fs5{font-size: 1.0625rem;}
		.cus-fs6{font-size: 1.125rem;}
		.cus-fs7{font-size: 1.3125rem;}
		.cus-fs8{font-size: 1.25rem;}
		.cus-fs9{font-size: 1.3125rem;}
		.cus-fs10{font-size: 1.375rem;}
	}

/* フォントサイズ 見出しテキスト */
	.cus-ms-5{font-size: 5rem; line-height: 1.4;}
	.cus-ms-4{font-size: 4.375rem; line-height: 1.4;}
	.cus-ms-3{font-size: 3.75rem; line-height: 1.4;}
	.cus-ms-2{font-size: 3.125rem; line-height: 1.4;}
	.cus-ms-1{font-size: 2.5rem; line-height: 1.5;}
	@media screen and (max-width: 1539px) {
		.cus-ms-5{font-size: 4.5rem; line-height: 1.4}
		.cus-ms-4{font-size: 3.94rem; line-height: 1.4}
		.cus-ms-3{font-size: 3.375rem; line-height: 1.4}
		.cus-ms-2{font-size: 2.81rem; line-height: 1.5}
		.cus-ms-1{font-size: 2.25rem; line-height: 1.5}
	}
	@media screen and (max-width: 991px) {
		.cus-ms-5{font-size: 3.5rem; line-height: 1.4}
		.cus-ms-4{font-size: 3.06rem; line-height: 1.4}
		.cus-ms-3{font-size: 2.63rem; line-height: 1.5}
		.cus-ms-2{font-size: 2.19rem; line-height: 1.5}
		.cus-ms-1{font-size: 1.75rem; line-height: 1.5}
	}
	@media screen and (max-width: 767px) {
		.cus-ms-5{font-size: 3rem; line-height: 1.4}
		.cus-ms-4{font-size: 2.63rem; line-height: 1.5}
		.cus-ms-3{font-size: 2.25rem; line-height: 1.5}
		.cus-ms-2{font-size: 1.88rem; line-height: 1.5}
		.cus-ms-1{font-size: 1.5rem; line-height: 1.5}
	}
	@media print {
		.cus-ms-5{font-size: 3rem; line-height: 1.4}
		.cus-ms-4{font-size: 2.63rem; line-height: 1.5}
		.cus-ms-3{font-size: 2.25rem; line-height: 1.5}
		.cus-ms-2{font-size: 1.88rem; line-height: 1.5}
		.cus-ms-1{font-size: 1.5rem; line-height: 1.5}
	}
	@media screen and (max-width: 575px) {
		.cus-ms-5{font-size: 2rem; line-height: 1.5}
		.cus-ms-4{font-size: 1.81rem; line-height: 1.5}
		.cus-ms-3{font-size: 1.63rem; line-height: 1.5}
		.cus-ms-2{font-size: 1.5rem; line-height: 1.5}
		.cus-ms-1{font-size: 1.38rem; line-height: 1.5}
	}


/* フォントカラー設定追加 */
	.cus-text-red{color: #f5305a;}
	.cus-text-red2{color: #7e0000;}
	.cus-text-pink{color: #e441be;}
	.cus-text-purple{color: #571692;}
	.cus-text-blue{color: #2e75b6;}
	.cus-text-green{color: #229922;}
	.cus-text-grey{color: #f1f1f1;}
	.cus-text-orange{color: #e67502;}


/* 文字間隔設定追加 */
	.cus-text-spacing-2{letter-spacing: 0.01em;}
	.cus-text-spacing-1{letter-spacing: 0.03em;}
	.cus-text-spacing1{letter-spacing: 0.05em;}
	.cus-text-spacing2{letter-spacing: 0.08em;}
	.cus-text-spacing3{letter-spacing: 0.01em;}

/* 行間隔設定追加 */
	.cus-text-height-3{line-height: 1.2;}
	.cus-text-height-2{line-height: 1.4;}
	.cus-text-height-1{line-height: 1.6;}
	.cus-text-height1{line-height: 1.8;}
	.cus-text-height2{line-height: 2;}
	.cus-text-height3{line-height: 2.2;}
	.cus-text-height4{line-height: 2.4;}


/* 縁付フォント */
	.cus-text-fuchi-wh{
		text-shadow: 
			white 2px 0px,  white -2px 0px,
			white 0px -2px, white 0px 2px,
			white 2px 2px , white -2px 2px,
			white 2px -2px, white -2px -2px,
			white 1px 2px,  white -1px 2px,
			white 1px -2px, white -1px -2px,
			white 2px 1px,  white -2px 1px,
			white 2px -1px, white -2px -1px;
	}
	.cus-text-fuchi-bk{
		text-shadow: 
			#333333 2px 0px,  #333333 -2px 0px,
			#333333 0px -2px, #333333 0px 2px,
			#333333 2px 2px , #333333 -2px 2px,
			#333333 2px -2px, #333333 -2px -2px,
			#333333 1px 2px,  #333333 -1px 2px,
			#333333 1px -2px, #333333 -1px -2px,
			#333333 2px 1px,  #333333 -2px 1px,
			#333333 2px -1px, #333333 -2px -1px;
	}


/* 注釈時、2行目以降先頭に1文字余白 */
	.cus-ft-indent{
		padding-left: 1em;
		text-indent: -1em;
	}


/* 先頭の一文字だけフォントカラー変更 */
	.cus-text-first-color:first-letter{
		color: #f10000;
	}


/* リストの装飾 */
	.cus-list-reset{
		padding: 0;
		list-style: none;
	}
	.cus-list-number{
		list-style: decimal outside;
		margin-left: 0px;
		padding-left: 25px;
	}
	.cus-list-disc{
		list-style: disc;
		margin-left: 0px;
		padding-left: 25px;
	}


/* サイズごと改行 */
	.cus-br-res{display: none;}
	@media screen and (min-width: 1539px) {
		.cus-br-full{display: block;}
	}
	@media screen and (min-width: 992px) {
		.cus-br-xl{display: block;}
	}
	@media screen and (max-width: 991px) {
		.cus-br-lg{display: block;}
	}
	@media print {
		.cus-br-lg{display: block;}
	}
	@media screen and (max-width: 767px) {
		.cus-br-md{display: block;}
	}
	@media screen and (max-width: 575px) {
		.cus-br-sm{display: block;}
	}


/* サイズごと非表示 */
	@media screen and (min-width: 992px) {
		.cus-none-xl{display: none;}
	}
	@media screen and (min-width: 768px) and (max-width: 991px) {
		.cus-none-lg{display: none;}
	}
	@media print {
		.cus-none-lg{display: none;}
	}
	@media screen and (min-width: 576px) and (max-width: 767px)  {
		.cus-none-md{display: none;}
	}
	@media screen and (max-width: 575px) {
		.cus-none-sm{display: none;}
	}


/* 画像のレスポンシブサイズ上書き */
	img{
		max-width: 100%;
		height: auto;
		width /***/:auto;
	}
	img[src$=".svg"] {width: 100%;}
	.img_h{line-height: 0;}


/* 画像のレスポンシブ仕様（object_fit） */
	.cus-object-fit-cover{
		object-fit: cover;
		font-family: 'object-fit: cover;';
	}
	.cus-object-fit-contain{
		object-fit: contain;
		font-family: 'object-fit: contain;';
	}


/* 画像ホバー時に少し拡大 */
	.cus-img-zoom{
		overflow: hidden;
		width: 100%;
	}
	.cus-img-zoom img{
		transition: 0.5s all;
	}
	.cus-img-zoom img:hover{
		transform: scale(1.2,1.2);
		transition: 0.7s all;
	}


/* 幅のパーセンテージ指定（5％刻み） */
	.cus-width-5{width: 5%;}
	.cus-width-10{width: 10%;}
	.cus-width-15{width: 15%;}
	.cus-width-20{width: 20%;}
	.cus-width-25{width: 25%;}
	.cus-width-30{width: 30%;}
	.cus-width-35{width: 35%;}
	.cus-width-40{width: 40%;}
	.cus-width-45{width: 45%;}
	.cus-width-50{width: 50%;}
	.cus-width-55{width: 55%;}
	.cus-width-60{width: 60%;}
	.cus-width-65{width: 65%;}
	.cus-width-70{width: 70%;}
	.cus-width-75{width: 75%;}
	.cus-width-80{width: 80%;}
	.cus-width-85{width: 85%;}
	.cus-width-90{width: 90%;}
	.cus-width-95{width: 95%;}
	.cus-width-100{width: 100%;}
	@media screen and (max-width: 767px) {
		.cus-width-md-5{width: 5%;}
		.cus-width-md-10{width: 10%;}
		.cus-width-md-15{width: 15%;}
		.cus-width-md-20{width: 20%;}
		.cus-width-md-25{width: 25%;}
		.cus-width-md-30{width: 30%;}
		.cus-width-md-35{width: 35%;}
		.cus-width-md-40{width: 40%;}
		.cus-width-md-45{width: 45%;}
		.cus-width-md-50{width: 50%;}
		.cus-width-md-55{width: 55%;}
		.cus-width-md-60{width: 60%;}
		.cus-width-md-65{width: 65%;}
		.cus-width-md-70{width: 70%;}
		.cus-width-md-75{width: 75%;}
		.cus-width-md-80{width: 80%;}
		.cus-width-md-85{width: 85%;}
		.cus-width-md-90{width: 90%;}
		.cus-width-md-95{width: 95%;}
		.cus-width-md-100{width: 100%;}
	}


/* アンカーポイント調整 */
	.cus-anker-point{
		position: relative;
		top: -120px;
		display: block;
	}
	@media screen and (max-width: 767px) {
		.cus-anker-point{
			top: -70px;
		}
	}


