@charset "utf-8";
html,body{
	margin:0;
	padding:0;
}
body #container {
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック体","Yu Gothic", YuGothic,"メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;

	color: #251e1c;
	font-size:14px;
	line-height: 1.5em;
	/*font-feature-settings : "palt";*/
	box-sizing: border-box;
}
#container .maru-go{
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
}
#container img {
	display: block;
	width: 100%;
	height: auto;
}
/* _:lang(x)::-internal-media-controls-overlay-cast-button, #container img {
	image-rendering: -webkit-optimize-contrast;
} */

@media print, screen and (min-width : 768px) {
/* CSS Document */
/*html {font-size: 62.5%;}*/

#container *{
margin:0;
padding:0;

}
#container *, #container *:before, #container *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

#container h1,
#container h2,
#container h3,
#container h4,
#container h5 {
	margin: 0;
	padding: 0;
	font-weight: 500;
	line-height: 1.7em;
}

#container div {
	margin: 0;
	padding: 0;
}

#container p {
	margin: 0;
	padding: 0;
	line-height: 1.5em;
}

#container a { color:#000; text-decoration:none; }
#container a:visited { color:#000; }
#container a:hover { color:#000; /*text-decoration:underline;*/ }
#container a:focus { color:#000; outline: thin dotted; }
#container a:hover, a:active { color:#000; outline: 0; }

#container table,
#container th,
#container td {
	margin: 0;
	padding: 0;
	font-size: inherit;
	font-size: 1em;
	border-collapse: collapse;
}
#container table{
	width:100%;
}

#container ul,
#container ol,
#container li,
#container dl,
#container dt,
#container dd {
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-position: outside;
	line-height: 1.5em;
}

#container img {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 0;
	vertical-align: bottom;
}

#container article,
#container aside,
#container canvas,
#container details,
#container figcaption,
#container figure,
#container footer,
#container header,
#container hgroup,
#container menu,
#container nav,
#container section,
#container summary
{
	display:block;
}
}
@media only screen and (max-width : 768px) {
	#container *{
margin:0;
padding:0;

}
#container *, #container *:before, #container *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
#container body {
    font-size: 3.5vw;
    line-height: 1.7em;
    color: #333333;
}

#container h1,#container h2,#container h3,#container h4,#container h5 {
	margin: 0;
	padding: 0;
}

#container div {
	margin: 0;
	padding: 0;
}

#container p {
	margin: 0;
	padding: 0;
	line-height: 1.7em;
}

#container a { text-decoration: none; }

#container table,#container th,#container td {
	margin: 0;
	padding: 0;
	font-size: inherit;
	font-size: 1em;
	border-collapse: collapse;
	line-height: 1.7em;
}
#container table{
	width:100%;
}

#container ul,#container ol,#container li,#container dl,#container dt,#container dd {
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-position: outside;
	line-height: 1.7em;
}

#container img {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 0;
	vertical-align: bottom;
	max-width:100%;
}

#container article,#container aside,#container canvas,#container details,#container figcaption,#container figure,
#container footer,#container header,#container hgroup,#container menu,#container nav,#container section,#container summary
{
	display:block;
}



}
@media only screen and (max-width : 420px) {
	#container .visible_w420 {
		display: block;
	}
	#container .invisible_w420 {
		display: none;
	}
}




/*--- リンクロールオーバー ---*/
#container a.txt-link,
#container a.txt-link:hover,
#container a.img-link img,
#container a.img-link:hover img,
#container a.block-link > p,
#container a.block-link > div,
#container a.block-link > ul > li,
#container a.block-link > dl > dt,
#container a.block-link > dl > dd,
#container a.block-link > span,
#container a.block-link:hover > p,
#container a.block-link:hover > div,
#container a.block-link:hover > ul > li,
#container a.block-link:hover > dl > dt,
#container a.block-link:hover > dl > dd,
#container a.block-link:hover > span {
	transition-property: opacity;
	transition-duration:.4s;
}
#container a.txt-link {
	opacity: 1;
}
#container a.txt-link:hover {
	opacity: 0.5;
}
#container a.img-link img {
	opacity: 1;
}
#container a.img-link:hover img {
	opacity: 0.5;
}
#container a.block-link > p,
#container a.block-link > div,
#container a.block-link > ul > li,
#container a.block-link > dl > dt,
#container a.block-link > dl > dd,
#container a.block-link > span {
	opacity: 1;
}
#container a.block-link:hover > p,
#container a.block-link:hover > div,
#container a.block-link:hover > ul > li,
#container a.block-link:hover > dl > dt,
#container a.block-link:hover > dl > dd,
#container a.block-link:hover > span {
	opacity: 0.5;
}




/*--- youtubeレスポンシブ ---*/
#container .youtube2 {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
#container .youtube2 iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*---------------------------
アニメーション用CSS
-----------------------------*/
/*---------------------------
アニメーション用CSS
-----------------------------*/
#container .translateUp{
  transform: translate(0px, 20px);
  -webkit-transform: translate(0px, 20px);
  opacity: 0;
  transition: 1s ease;
  -webkit-transition: 1s ease;
}
#container .translateUp.active{
  opacity: 1;
  transform: translate(0px, 0px);
  -webkit-transform: translate(0px, 0px);
}

#container .container_btn{
  transition: .5s;
  opacity: 1;
  cursor: pointer;
}
#container .container_btn:hover{
  transition: .5s;
  opacity: .8;
}

/*---------------------------
レスポンシブ対応
-----------------------------*/
@media(min-width:1580px){
	#container .monitor_block{
    display: block !important;
  }
	#container .monitor_none{
    display: none !important;
  }
}
@media(max-width:1580px){
  #container .monitor_block{
    display: none !important;
  }

}
@media(min-width:756px){
  #container .sp{
    display: none !important;
  }
}
@media(max-width:757px){
  #container .pc{
    display: none !important;
  }
}