@charset "UTF-8";
/****************************************

    Reset

*****************************************/
/* Reset Style */
html {
	overflow-y: scroll;
	scroll-behavior: smooth;
	word-break: break-all;
}
html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: 400;
}
body {
	-webkit-font-smoothing: antialiased;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
}
img {
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}
ol, ul {
	list-style: none outside none;
	margin: 0;
	padding: 0;
}
li {
	list-style-type: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th {
	text-align: left;
}
q:before, q:after {
	content: '';
}
img, object, embed {
	vertical-align: top;
}
legend {
	display: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}
img, abbr, acronym, fieldset {
	border: 0;
}
li {
	list-style-type: none;
}
select, input, button, textarea {
	font: 99% arial, helvetica, clean, sans-serif;
}
table {
	font-size: inherit;
	font: 100%;
}
pre, code, kbd, samp, tt {
	font-family: monospace;
 *font-size: 108%;
	line-height: 100%;
}
area {
	border: none;
	outline: none;
}
em, strong {
	font-weight: bold;
}
img {
    width: 100%;
}
img[src$=".svg"] {
    width: 100%;
}
*, *::before, *::after {
  box-sizing: border-box;
}
/****************************************

    Link

*****************************************/
a {
	color: #333;
	outline: none;
}
a:link {
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
a.disable {
	cursor: default;
}
a:visited {
	text-decoration: none;
}
a.disable:hover {
	text-decoration: none;
}
a.default:link {
	color: #0000ff;
	text-decoration: underline;
}
a.default:link:hover {
	text-decoration: none;
}
a.default:visited {
	color: #800080;
}
a.default:active {
	color: #ff8000;
}
a.default:hover {
	color: #b80120;
}
.no-link {
	opacity: 0.5;
	pointer-events:none;/*リンクを非リンクに変える*/
	cursor:default;/*マウスカーソルを矢印のまま変えない*/
	text-decoration:none;/*下線を消す*/
}
/****************************************

    common

*****************************************/
.inline-block {
	display: inline-block;
 *display: inline;
 *zoom: 1;
}
.table-cell {
	display: table-cell;
 *display: inline;
 *zoom: 1;
	vertical-align: middle;
}
.serif {
	font-family: 'YuMincho', 'Yu Mincho', '游明朝', 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}
.over {
 filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
	opacity: 1;
	-moz-transition: opacity 0.1s ease-in;
	-o-transition: opacity 0.1s ease-in;
	-webkit-transition: opacity 0.1s ease-in;
	transition: opacity 0.1s ease-in;
}
.over:hover {
 filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
	opacity: 0.6;
}
.scale-up {
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-webkit-transition-property: -webkit-transform;
	transition-property: transform;
	-moz-transition-duration: 0.1s;
	-o-transition-duration: 0.1s;
	-webkit-transition-duration: 0.1s;
	transition-duration: 0.1s;
	-moz-transition-timing-function: ease-in;
	-o-transition-timing-function: ease-in;
	-webkit-transition-timing-function: ease-in;
	transition-timing-function: ease-in;
}
.scale-up:hover {
	-moz-transform: scale(1.05, 1.05);
	-ms-transform: scale(1.05, 1.05);
	-webkit-transform: scale(1.05, 1.05);
	transform: scale(1.05, 1.05);
}
.scale-down {
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-webkit-transition-property: -webkit-transform;
	transition-property: transform;
	-moz-transition-duration: 0.1s;
	-o-transition-duration: 0.1s;
	-webkit-transition-duration: 0.1s;
	transition-duration: 0.1s;
	-moz-transition-timing-function: ease-in;
	-o-transition-timing-function: ease-in;
	-webkit-transition-timing-function: ease-in;
	transition-timing-function: ease-in;
}
.scale-down:hover {
	-moz-transform: scale(0.95, 0.95);
	-ms-transform: scale(0.95, 0.95);
	-webkit-transform: scale(0.95, 0.95);
	transform: scale(0.95, 0.95);
}
.grow {
	overflow: hidden;
}
.grow img {
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-webkit-transition-property: -webkit-transform;
	transition-property: transform;
	-moz-transition-duration: 0.8s;
	-o-transition-duration: 0.8s;
	-webkit-transition-duration: 0.8s;
	transition-duration: 0.8s;
	-moz-transition-timing-function: ease-in;
	-o-transition-timing-function: ease-in;
	-webkit-transition-timing-function: ease-in;
	transition-timing-function: ease-in;
}
.grow img:hover {
	-moz-transform: scale(1.02, 1.02);
	-ms-transform: scale(1.02, 1.02);
	-webkit-transform: scale(1.02, 1.02);
	transform: scale(1.02, 1.02);
	-moz-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
.mcf {
 *zoom: 1;
}
.mcf:before, .mcf:after {
	content: " ";
	display: table;
	clear: both;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.txtL {
	text-align: left;
}
.txtR {
	text-align: right;
}
.txtC {
	text-align: center;
}
.txtRed {
	color: #FF0004;
}

@media only screen and (max-width: 768px) {

}

/* ----------------------------------------------------------------
    footer
  ----------------------------------------------------------------- */

/* ----------------------------------------------------------------
    youtubeレスポンシブ
  ----------------------------------------------------------------- */
.movie-wrap {
  overflow: hidden;
  padding-bottom: 56.25%;
  height: 0;
  position: relative;
}
.movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* ----------------------------------------------------------------
    display: none
  ----------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
.hidden-sp {
    display: none !important;
}
}

@media only screen and (min-width: 768px) {
.hidden-pc {
    display: none !important;
}
}
@media only screen and (min-width: 1024px) {
.display-tb {
    display: none !important;
}
}

@media only screen and (max-width: 1024px) {
.hidden-tb {
    display: none !important;
}
}

/* ----------------------------------------------------------------
    ヘッダー
  ----------------------------------------------------------------- */