@charset "utf-8";
@import url("ress.css");
@import url("bootstrap-grid.css");
@import url("module.css");

body::after {
 content: '';
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background-color:#fff;  /* 背景カラー */
 z-index: 9999;  /* 一番手前に */
 pointer-events: none;  /* 他の要素にアクセス可能にするためにポインターイベントは無効に */
 opacity: 0;  /* 初期値 : 透過状態 */
 -webkit-transition: opacity .8s ease;  /* アニメーション時間は 0.8秒 */
 transition: opacity .8s ease;
}

body.fadeout::after {
 opacity: 1;
}

/*----------------------------------------------------
	共通
----------------------------------------------------*/
html{ font-size: 62.5%; }

/* 画面サイズが1000px以上のとき */
@media (min-width: 1000px) {
 body { font-size: 1.6rem; }
 h1 {  }
 h2 {  }
 h3 { font-size: 2.4rem; }
 h4 {  }
 h5 { }
}

/* 画面サイズが576pxから1000pxまでのとき */
@media (min-width:576px) and ( max-width:999px) {
 body { font-size: 1.6vw; }
}

/* 画面サイズが575px以下のとき */
@media (max-width: 575px) {
 body { font-size: 1.6rem; }
 h1 {  }
 h2 {  }
 h3 { font-size: 2.4rem; }
 h4 {  }
 h5 { }
}


body {
 -webkit-text-size-adjust: 100%; /* 端末を横にしても文字サイズを拡大させない */
 font-family: "游ゴシック", YuGothic, Yu Gothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ ゴシック", MS Gothic, sans-serif;
}
html,
body {
 overflow-x: hidden;
 overflow-y: auto;
}

img { border: 0; vertical-align: bottom; }
ul { padding: 0; }

*, *:before, *:after { box-sizing: border-box; }


/* 汎用
----------------------------------------------------*/
/* clearfix */
.clearfix::after { content: ""; display: block; clear: both; }
.clear { clear: both; }

/* Facebook */
.fb-container { width: 100%; }

/* bootstrap-grid.cssのコンテナをリセット */
@media (min-width: 576px) { .container { max-width: 100%; padding: 0; } }
@media (min-width: 768px) { .container { max-width: 100%; padding: 0; } }
@media (min-width: 992px) { .container { max-width: 100%; padding: 0; } }
@media (min-width: 1200px) { .container { max-width: 100%; padding: 0; } }

/* 0〜575pxまでの画面（スマートフォン）*/
img { max-width: 100%; height: auto; }
.container { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }

/* 576〜1000pxまでの画面*/
@media (min-width:576px) and ( max-width:999px) { body { width: 95%; margin: 0 auto; } }

/* 576pxより大きい画面（パソコン／smで指定）*/
@media (min-width:576px) {
html,
body { overflow-x: auto; }
.container { width: 820px; }
}

@media (max-width: 575px){ .pcOnly { display:none; }}
@media (min-width: 576px){ .spOnly { display:none; }}
