﻿HTML {
	font-family: "ＭＳ Ｐゴシック","Hiragino Maru Gothic Pro","ヒラギノ丸ゴ Pro W4",Osaka,sans-serif;
	font-size: 12px;
}

body {
	//margin: 0;
	//padding: 0;
}

a { text-decoration: none; }

a.anchor{
    display: block;
    padding-top: 20px;
    margin-top: -20px;
}


/*----------------------------------------------------------*/
/* フォーム入力時のズームを防ぐ */
/*----------------------------------------------------------*/
select, textarea, input{
  font-size: 16px;
  box-sizing:
  border-box;
}


.fit1{
	white-space: nowrap;
	width: 10px;
}

.fixed_table{
	table-layout: fixed;
}


.allcell{
	width:		100%;
	height:		100%;
	display:	block;
}

.pfofile_photo{width:200px;}
.thumbnail1{width:30px;}
.thumbnail2{width:70%;}


.box-img,
.box-text{
  display: inline-block;
  vertical-align: middle;
  margin-right:5px;
}


.small3	{	font-size:		9px;}
.small2	{	font-size:		10px;}
.small1	{	font-size:		11px;}
.big	{	font-size:		14px;}
.big2	{	font-size:		14px;}
.big3	{	font-size:		16px; 
			font-weight:	800;
		}
.font20	{	font-size:		20px; 
		}

.weight800	{font-weight: 800 !important;}
.bold		{font-weight: 800 !important;}

.w100	{width: 100% !important;}
.w90	{width: 90% !important;}
.w80	{width: 80% !important;}
.w70	{width: 70% !important;}
.w60	{width: 60% !important;}
.w50	{width: 50% !important;}
.w40	{width: 40% !important;}
.w30	{width: 30% !important;}
.w20	{width: 20% !important;}
.w10	{width: 10% !important;}

.h100	{height:100%;}


.margin0	{margin:	0px 0px 0px 0px !important;}
.margin5	{margin:	5px 5px 5px 5px;}
.margin10	{margin:	10px 10px 10px 10px;}
.margin20	{margin:	20px 20px 20px 20px;}

.padding0	{padding:	0px 0px 0px 0px !important;}
.padding5	{padding:	5px 5px 5px 5px;}
.padding10	{padding:	10px 10px 10px 10px !important;}
.padding15	{padding:	15px 15px 15px 15px !important;}
.padding20	{padding:	20px 20px 20px 20px;}

.margin_t_b_5	{margin:	5px 0px 5px 0px;}
.margin_t_b_10	{margin:	10px 0px 10px 0px;}
.margin_t_b_20	{margin:	20px 0px 20px 0px;}

.padding_t_b_5	{padding:	5px 0px 5px 0px;}
.padding_t_b_10	{padding:	10px 0px 10px 0px;}
.padding_t_b_20	{padding:	20px 0px 20px 0px;}

.box-sizing{
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.nodata{
	color: #999999;
}

.finish{
	color: #999999;
}

.next{
	//font-weight: 700;
	//background-color:#ffeaf4;
	background-color:#ffd199;
}

.home{
	color: #db7093;
}

.home a:link{ color:#db7093;}
.home a:visited{ color:#db7093;}
.home a:hover{ color:#db7093;}
.home a:active{ color:#db7093;}

.away a:link{ color:#00f;}
.away a:visited{ color:#00f;}
.away a:hover{ color:#00f;}
.away a:active{ color:#00f;}


//	スイッチの背景
.off	{background-color: #DDDDDD !important;}
.on		{background-color: #ffd788 !important;}
.ng		{background-color: #ff4500 !important;}


.logo1{
	width:250px;
}

.logo2{
	height: 80px;
}

.image1{
	width: 80%;
}

.c	{text-align: center	!important;}
.r	{text-align: right	!important;}
.l	{text-align: left	!important;}

.t	{vertical-align: top	!important;}
.m	{vertical-align: middle	!important;}
.b	{vertical-align: bottom	!important;}

.block_r{margin: 0 0 0 auto;}
.block_l{margin: 0 auto 0 0;}

.pink	{color: hotpink;}
.red	{color: red;}
.blue	{color: blue;}

.win	{background-color: lavender;}
.lose	{background-color: mistyrose;}

.b1	{background-color:#BBFFBB;}
.b2	{background-color:#FFDDDD;}


// 折り返し
.wrap {
　　　overflow-wrap: break-word !important;
　　　word-wrap: break-word !important;
}
.no_wrap {
	white-space: nowrap !important;
}


.top_link{margin-top:3px;}

.bbs	{	background-color:azure;
		border-style: solid;
		border-width: 1px;
		border-color: powderblue;
	}

.bbs_title{
		color: #ee827c;
		font-weight: bold;
		font-size:14px;
}

.bbs_datetime{
		color: gray;
		font-size:10px;
}

.inline-block {
    display: inline-block;      /* インラインブロック要素にする */
    //background-color:  #ccc;    /* 背景色指定 */
    //height:  300px;             /* 高さ指定 */
    //width: 50%;                 /* 幅指定 */
}



/* タイトルボックス */
.title_box {
	width:				100%;
	padding:			10px 5px 10px 5px;
	margin:				0px;
	border:				1px solid #dddddd;
	background-color:	#f4f4f4;
	text-align:			center;
	font-weight:		bold;
}

.item1_box{
	width:				100%;
	padding:			5px 5px 5px 5px;
	margin:				0px;
	border:				1px solid #dddddd;
	background-color:	#f9f9f9;
}
/*
.item1_box{
	width:				100%;
	padding:			5px;
	margin:				5px 0px 5px 0px;
	background-color:	#f9f9f9;
	border:				1px solid #dddddd;
	white-space:		nowrap;
}
*/
.item2_box{
	width:				100%;
	padding:			5px 5px 15px 5px;
	margin:				0px;
	border-left:		1px solid #dddddd;
	border-right:		1px solid #dddddd;
}

.no_border-top{
	border-top: 0px;
}




/* メインテーブル */
.main_table {
	border-collapse: collapse;
	margin-bottom: 20px;
}

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

.main_table th {
	padding: 10px;
	border: 1px solid #dddddd;
	white-space: nowrap;
	background: #f4f4f4;
}

.main_table td {
	padding: 5px;
	border: 1px solid #dddddd;
	//white-space: nowrap;
}

.main_table td.sub {
	background: #f9f9f9;
}


.table_title1{
	font-size:14px;
	font-weight: 800;
	background-color: #f4b3c2;
	padding: 20px !important;
}

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

.cp_table th {
	padding: 10px;
	border: 1px solid #dddddd;
	white-space: nowrap;
	width: 30%;
	text-align: left;
	background: #f4f4f4;
}

.cp_table td {
	padding: 5px;
	border: 1px solid #dddddd;
	white-space: nowrap;
}


.cp_table td.sub {
	background: #f9f9f9;
}



.cp_ipselect {
	overflow: hidden;
	width: 90%;
	margin: 0.8em auto;
	text-align: center;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	border: 1px solid #bbbbbb;
	border-radius: 2px;
	background: #ffffff;
}
.cp_ipselect.cp_sl01::before {
	position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}


.noline{ border-style: none	!important; }


.bgcolor0{background-color: plum;}
.bgcolor1{background-color: #eddbff;}
.bgcolor2{background-color: #ffdbed;}
.bgcolor3{background-color: #ffeddb;}
.bgcolor4{background-color: #ffffdb;}
.bgcolor5{background-color: #dbffdb;}
.bgcolor6{background-color: #f0e68c;}

.goodbgcolor{background-color: lightcyan;}
.badbgcolor{background-color: #ffeff7;}


/***** テーブル *****/
TABLE.tableLayout1 {
	margin: 0 0 0 0;
	border-collapse: collapse;
	font-size: 100%;
	border-style: none;
}

TABLE.tableLayout1 TH,
TABLE.tableLayout1 TD {
	padding: 1px;
	border-style: none;
}


TABLE.noline_table {
	border-style: none;
}

TABLE.noline_table TH,
TABLE.noline_table TD {
	border-style: none;
	white-space: normal !important;
}


.button1 {
  border: 1px solid #15aeec;
  background-color: #49c0f0;
  background-image: -webkit-linear-gradient(top, #49c0f0, #2cafe3);
  background-image: linear-gradient(to bottom, #49c0f0, #2cafe3);
  border-radius: 4px;
  color: #fff;
  /*line-height: 50px;*/
  -webkit-transition: none;
  transition: none;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}
.button1:hover {
  border:1px solid #1090c3;
  background-color: #1ab0ec;
  background-image: -webkit-linear-gradient(top, #1ab0ec, #1a92c2);
  background-image: linear-gradient(to bottom, #1ab0ec, #1a92c2);
}
.button1:active {
  background: #1a92c2;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, .2);
  color: #1679a1;
  text-shadow: 0 1px 1px rgba(255, 255, 255, .5);
}

/***** フッターメニューボタン ******/
.footer_button1 {
  padding: 4px 2px 4px 2px;
  font-size: 14px;
  border: 1px solid #15aeec;
  background-color: #49c0f0;
  background-image: -webkit-linear-gradient(top, #49c0f0, #2cafe3);
  background-image: linear-gradient(to bottom, #49c0f0, #2cafe3);
  border-radius: 4px;
  color: #fff;
  /*line-height: 50px;*/
  -webkit-transition: none;
  transition: none;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
  z-index:9999;
}
.footer_button1:hover {
  border:1px solid #1090c3;
  background-color: #1ab0ec;
  background-image: -webkit-linear-gradient(top, #1ab0ec, #1a92c2);
  background-image: linear-gradient(to bottom, #1ab0ec, #1a92c2);
}
.footer_button1:active {
  background: #1a92c2;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, .2);
  color: #1679a1;
  text-shadow: 0 1px 1px rgba(255, 255, 255, .5);
}



.big_button{height:40px; font-size:14px;}
.big_button2{height:40px; font-size:20px;}


.button_color2{
  border: 1px solid #ff80ff !important;
  background-color: #ff99ff !important;
  background-image: -webkit-linear-gradient(top, #ff99ff, #ff99ff) !important;
  background-image: linear-gradient(to bottom, #ff99ff, #ff99ff) !important;
}

.button_color2:hover {
  border:1px solid #ff80ff !important;
  background-color: #ff80ff !important;
  background-image: -webkit-linear-gradient(top, #ff80ff, #ff80ff) !important;
  background-image: linear-gradient(to bottom, #ff80ff, #ff80ff) !important;
}
.button_color2:active {
  background: #ff66ff !important;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, .2) !important;
  color: #1679a1 !important;
  text-shadow: 0 1px 1px rgba(255, 255, 255, .5) !important;
}



.title_img1{
	width:300px;
	margin-left: auto;
	margin-right: auto;
}

.img_div1{
	margin-left: auto;
	margin-right: auto;
}

.icon1{height:15px; vertical-align:-17%;}
.icon2{height:12px; vertical-align:-17%;}
.icon3{height:25px; vertical-align:100%;}


.good_button {
	width: auto;
	padding:0;
	margin:0;
	background:none;
	border:0;
	font-size:0;
	line-height:0;
 	overflow:visible;
	cursor:pointer;
}

.td_space1{padding: 20px;}



/***** アップデート ******/
.update {
	background-color: Lavender;
	border: solid 1px LightSteelBlue;
	color: SteelBlue;
	margin-bottom: 10px;
	padding: 10px;
}

/***** メッセージ ******/
.information {
	background-color: lightgreen;
	border: solid 1px mediumaquamarine;
	color: darkcyan;
	margin-bottom: 20px;
	padding: 10px;
}

.information2 {
	//background-color: lightgreen;
	border: solid 1px mediumaquamarine;
	//color: darkcyan;
	margin-bottom: 20px;
	padding: 10px;
}


.message {
	background-color: Lavender;
	border: solid 1px LightSteelBlue;
	color: SteelBlue;
	margin-bottom: 20px;
	padding: 10px;
}

.message1 {
	background-color: mistyrose;
	border: solid 1px lightpink;
	color: indianred;
	margin-bottom: 20px;
	padding: 10px;
}

.message2 {
	background-color: Lavender;
	border: solid 1px LightSteelBlue;
	color: SteelBlue;
	margin-bottom: 20px;
	padding: 10px;
}


/***** アラート ******/
.alert {
	background-color: #ffe5f2;
	border: solid 1px #ff4500;
	color: Tomato;
	margin-bottom: 20px;
	padding: 10px;
}

.debug {
	background-color: #ffe5f2;
	border: solid 1px #ff4500;
	color: Tomato;
	margin-top: 20px;
	padding: 10px;
	line-height: 120%;
}

/***** 機能追加などのお知らせ ******/
.info {
	background-color: papayawhip;
	border: solid 1px orange;
	color: saddlebrown;
	margin-bottom: 20px;
	padding: 10px;
}

.info_title{
	font-weight: bold;
}
.info_date{
	color: burlywood;
}
.info_content{
	margin-top:5px;
}

/***** 新着動画のお知らせ ******/
.info2 {
	background-color: #ffe6ea;
	border: solid 1px #ff8095;
	color: maroon;
	margin-bottom: 20px;
	padding: 10px;
}

.info2_title{
	font-weight: bold;
}
.info2_date{
	color: indianred;
}
.info2_content{
	margin-top:5px;
}

DIV.info2,DIV.info,DIV.update,DIV.information,DIV.message,DIV.message1,DIV.message2,DIV.alert
{	
	/* 角丸 */
    border-radius: 10px;        /* CSS3草案 */
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 10px;   /* Firefox用 */
}


/*
	画像と横並びの文字を中央に
*/
/* for IE6 */
* html div#img-c p{
	display:inline;
	zoom:1;
        }
 
/* for IE7 */
*:first-child+html div#img-c p{
	display:inline;
	zoom:1;
        }
 
 
/*  \9ハックを利用してまとめた記述　*/
div#img-c p{
	font-size:12px;
	color:#777777;
	display:table-cell;
	vertical-align:middle;
	margin:0;
        display:inline\9;
        zoom:1\9;   
	}

/*  画像にパディングを設定してスペースを調整　*/
	//div#img-c img{padding-right:5px;}

.h10	{height:10px;}
.h13	{height:13px;}
.h15	{height:15px;}
.h20	{height:20px;}
.h25	{height:25px;}
.p_r5	{padding-right:5px;}
.p_r10	{padding-right:10px;}
.p_r15	{padding-right:15px;}
.p_r20	{padding-right:20px;}
.p_r25	{padding-right:25px;}
.p_r30	{padding-right:30px;}

.p_b3	{padding-bottom:3px;}
.p_b5	{padding-bottom:5px;}

.m_t3	{margin-top:3px;}
.m_t5	{margin-top:5px;}

.side {
    display: inline-block;      /* インラインブロック要素にする */
    //padding:  20px;             /* 余白指定 */
    //height: 100px;              /* 高さ指定 */
}


/*----------------------------------------------------------*/
/* ページング表示用 */
/*----------------------------------------------------------*/
div#pagenation {
   position: relative;
   overflow: hidden;
}
div#pagenation ul {
    position:relative;
    right:0%;
    float:right;
    list-style: none;
}
div#pagenation li {
    position:relative;
    right:0%;
    float:right;
}
div#pagenation li a {
    border:1px solid #CECECE;
    margin: 0 3px;
    padding:3px 7px;
    display: block;
    text-decoration:none;
    color: #666666;
    background: #fff;
}
div#pagenation li.active a,
div#pagenation li a:hover{
    border:solid 1px #666666;
    color: #FFFFFF;
    background: #3399FF;
}


/*----------------------------------------------------------*/
/* チャット風吹き出し */
/*----------------------------------------------------------*/
.kaiwa-img-left {width: 14%;display: inline-block;vertical-align: top;margin-bottom: 10px;box-sizing: border-box;text-align: right;padding-top: 14px;}
.kaiwa-img-left img{width: 40px;border-radius: 50%;}
.kaiwa-name-left{font-size: small;position: relative;width: 62%;display:inline-block;vertical-align:  top;margin-left: 4%;margin-right: 18%;margin-bottom: 10px;box-sizing: border-box;}
.kaiwa-text-left{display:inline-block; background-color: #e0edff;padding: 10px;border-radius: 10px;}
.kaiwa-text-left:after {content: '';position: absolute;width: 0;height: 0;border-style: solid;border-width: 7px 15px 7px 0;border-color: transparent #e0edff transparent transparent;top: 30px;left: -15px;}

.kaiwa-name-right {font-size: small;position: relative;width: 62%;display: inline-block;vertical-align: top;margin-right: 4%;margin-left: 18%;margin-bottom: 10px;box-sizing: border-box;text-align: right;}
.kaiwa-img-right {width: 14%;display: inline-block;vertical-align: top;margin-bottom: 10px;box-sizing: border-box;padding-top: 14px;text-align: left;}
.kaiwa-img-right img{width: 40px;border-radius: 50%;} .kaiwa-img-right p{text-align: left;padding:0px;margin:0px;}
.kaiwa-text-right{display: inline-block;text-align:left;background-color: #ffeda5;padding: 10px;border-radius: 10px;}
.kaiwa-text-right:after {content: '';position: absolute;width: 0;height: 0;border-style: solid;border-width: 7px 0 7px 15px;border-color: transparent transparent transparent #ffeda5;top: 30px;right: -15px;}


/*----------------------------------------------------------*/
/* ユーザーコメント用 */
/*----------------------------------------------------------*/
.comment_created {
  background-color:paleturquoise;
  color:dodgerblue;
  padding:3px;
}

/*
.comment_y {
  background-color:whitesmoke;
  padding:5px;
  margin-top	: 10px;
  margin-right	: auto;
  margin-bottom	: 10px;
  margin-left	: 10px;
}

.comment_m {
  background-color:#5ae628;
  padding:5px;
  margin-top	: 10px;
  margin-right	: 10px;
  margin-bottom	: 10px;
  margin-left	: auto;
}
*/



.comment_m		{	display: inline-block;
				background-color:#5ae628;
				padding: 8px;
				border-radius: 15px;
				margin: 5px 5px 0px 5px;
				word-wrap: break-word;
				white-space: normal;
				max-width: 250px;
				text-align: left;
			}

.comment_y		{	display: inline-block;
				background-color:whitesmoke;
				padding: 8px;
				border-radius: 15px;
				margin: 5px 5px 0px 5px;
				word-wrap: break-word;
				white-space: normal;
				max-width: 250px;
				text-align: left;
			}

.comment_name_m		{
				margin-right:5px;
				margin-top:10px;
				font-size:0.8em;
				color: #555555;
}

.comment_name_y		{
				margin-left:5px;
				margin-top:10px;
				font-size:0.8em;
				color: #555555;
}

.comment_created2_m	{	display: inline-block;
				font-size:0.8em;
				color: #BBBBBB;
				margin: 5px 0px 5px 10%;
}

.comment_created2_y	{	display: inline-block;
				font-size:0.8em;
				color: #BBBBBB;
				margin: 5px 10% 5px 0px;
}

.comment_text	{		margin: 0px;
				width: 100%;
				height:100%;
 				display:block;
}

.comment_button	{		margin: 0px;
				width: 100%;
				height:100%;
}

/*----------------------------------------------------------*/
/* 管理画面用 */
/*----------------------------------------------------------*/
.admin_table {
	margin-left: auto;
	margin-right: auto;
}

.admin_contents_table {
	font-size:12px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	border-collapse: collapse;
	margin-top: 30px;
	margin-bottom: 20px;
}

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

.admin_contents_table th {
	padding: 10px;
	border: 1px solid #dddddd;
	white-space: nowrap;
	background: #f4f4f4;
}

.admin_contents_table td {
	padding: 5px;
	border: 1px solid #dddddd;
	white-space: nowrap;
}

.admin_contents_space{
	border-style: none !important;
	height: 30px;
}


.img_edit_ads_banners{
	width:200px;
}


/*----------------------------------------------------------*/
/* メニューボタン */
/*----------------------------------------------------------*/
.menuButton{
	position: fixed;
	//top: 10px;
	//opacity: 0.8;
	height:35px;
	z-index: 10;
	cursor: pointer;
}
.myButton{
	//position: fixed;
	//top: 10px;
	//opacity: 0.8;
	height:35px;
	z-index: 10;
	cursor: pointer;
}

.top_parent {
    /* ベンダープレフィックスは省略 */
    display: flex;
    justify-content: center; /* 子要素を中央揃え */
    position: relative;
    padding: 10px;
}
.top_right {
    position: absolute;
    right: 10px; /* 右寄せ */
}
.top_left {
    position: absolute;
    left: 10px; /* 左寄せ */
}

/*----------------------------------------------------------*/
/* フッターメニュー用 */
/*----------------------------------------------------------*/
.wrapper{
    //min-height: 100vh;
    position: relative;/*←相対位置*/
    //padding-bottom: 80px;/*←footerの高さ*/
    //box-sizing: border-box;/*←全て含めてmin-height:100vhに*/
}

footer{
    width: 100%;
    background-color: #ffffff;
    color: #fff;
    text-align: center;
    padding: 10px 10px 20px 10px;
    position: fixed;
    bottom: 0; /*下に固定*/
}


/*----------------------------------------------------------*/
/* TOPへ戻るボタン用 */
/*----------------------------------------------------------*/
.SmoothScroll_pageTop{
    text-align:right;
    position: fixed;
    bottom: 70px;
    right: 10px;
    display: none;
    z-index: 10;
}
.SmoothScroll_pageTop a{
    display:inline-block;
    background-color:rgba(54, 54, 54, 0.4);
    padding:10px 20px;
    margin:10px 0;
    color:#FFF;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
}
.SmoothScroll_pageTop a::before{
    font-family:FontAwesome;
  content: "\f062";
    margin-right:5px;
}
.SmoothScroll_pageTop a:hover{
    background-color:rgba(54, 54, 54, 0.6);
}
 
@media only screen and (max-width: 768px) {
    .SmoothScroll_pageTop a{
        -webkit-border-radius: 100%;
        -moz-border-radius: 100%;
        border-radius: 100%;
        width:50px;
        height:50px;
        padding:0;
        text-align:center;
        line-height:50px;
    }
    .SmoothScroll_pageTop a::before{
        margin-right:0;
    }
    .SmoothScroll_pageTop a span{
        display:none;
    }
}


/*----------------------------------------------------------*/
/* MENUのモーダルウインドウ用 */
/*----------------------------------------------------------*/
/* メニューボタン
#btn-menu {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 78px;
  height: 70px;
  padding: 0 20px;
  color: #fff;
  background: #e73363;
  z-index: 2;
  transition: all .2s ease-in;
}
*/

#btn-menu span {
  display: block;
  width: 100%;
  height: 5px;
  background: #fff;
}
 
#btn-menu span:nth-of-type(1) {
  margin: 5px 0 0;
}
 
#btn-menu span:nth-of-type(2) {
  margin: 8px 0 0;
}
 
#btn-menu span:nth-of-type(3) {
  margin: 8px 0 5px;
}
 
/* メニュー */
#sp-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  overflow: scroll;
  z-index: 1;
  transition: all .3s ease-in;
  visibility: hidden;
  opacity: 0;
}
 
.open-menu #sp-menu {
  visibility: visible;
  opacity: 1;
}
 
#sp-menu-position {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
}
 
.sp-menu-list {
  list-style: none;
}
 
.sp-menu-list a {
  color: #ffffff;
}

.sp_menu_li{
  font-size: 16px;
  color: #ffffff;
  margin-bottom: 5px;
  white-space: nowrap;
}


/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge{
	position: fixed;
	bottom: 140px !important;
}

/*----------------------------------------------------------*/
/* スマホ用のCSS */
/*----------------------------------------------------------*/
@media only screen and (max-width: 479px) {

	.main_box{
		width:	100%;
		margin:	0px auto 20px auto;
	}

	.menuButton{
		right: 10px;
	}

	.admin_table {
		width:700px;
	}
	.cp_table {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		border-collapse: collapse;
	}

	.main_table {
		width: 98%;
		margin-left: auto;
		margin-right: auto;
	}

	.main_div {
		width: 95%;
		margin-left: auto;
		margin-right: auto;
	}

	.div1{	width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.div2{	width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
	.info{	width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	.info2{	width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	
	.cp_table td {
		padding: 3px;
	}
	
	.div_info{
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	
	.div_top{
		width: 100%;
		color: #555555;
		//background-color: whitesmoke;
		margin-left: auto;
		margin-right: auto;
		padding: 5px;
	}
	
	.div_bbs{
		width: 95%;
		margin:	10px auto 10px auto;
		padding: 5px;
	}

	.s_small3	{	font-size:		9px	!important;}
	.s_small2	{	font-size:		10px	!important;}
	.s_small1	{	font-size:		11px	!important;}

	.ads_banner	{	width: 170px;
			}
	.top_logo	{	height: 25px;
				border-radius: 3px;
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}
	.small_09_em	{	font-size: 0.9em;}
	.small_05_em	{	font-size: 0.5em;}

	.img-team-photo1{	height: 80px;
			}
}

/*----------------------------------------------------------*/
/* タブレット用のCSS */
/*----------------------------------------------------------*/
@media only screen and (min-width:480px) and (max-width:768px) {
	
	.main_box{
		width:	470px;
		margin:	0px auto 20px auto;
	}

	.menuButton{
		right: calc(100% - 470px)/2;
	}

	.admin_table {
		width:700px;
	}
	.cp_table {
		width: 470px;
		margin-left: auto;
		margin-right: auto;
		border-collapse: collapse;
	}

	.main_table {
		width: 470px;
		margin-left: auto;
		margin-right: auto;
	}

	.main_div {
		//width: 470px;
		width: 95%;
		margin-left: auto;
		margin-right: auto;
	}

	.div1{	width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.div2{	width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
	.info{	width: 423px;
		margin-left: auto;
		margin-right: auto;
	}
	.info2{	width: 423px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.div_info{
		width: 423px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.div_top{
		width: 470px;
		color: #555555;
		//background-color: whitesmoke;
		margin-left: auto;
		margin-right: auto;
		padding: 5px;
	}
	
	.div_bbs{
		width: 460px;
		margin:	10px auto 10px auto;
		padding: 5px;
	}

	.ads_banner	{	width: 200px;
			}
	.top_logo	{	height: 25px;
				border-radius: 3px;
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}
	.small_09_em	{	//font-size: 0.9em;}
	.small_05_em	{	//font-size: 0.5em;}

	.img-team-photo1{	height: 140px;
			}
}

/*----------------------------------------------------------*/
/* PC用のCSS */
/*----------------------------------------------------------*/

@media only screen and (min-width: 769px) {
	
	.main_box{
		width:	600px;
		margin:	0px auto 20px auto;
	}

	.menuButton{
		right: calc(100% - 600px)/2;
	}

	.admin_table {
		width:1200px;
	}
	.cp_table {
		width: 600px;
		margin-left: auto;
		margin-right: auto;
  		border-collapse: collapse;
	}

	.main_table {
		width: 600px;
		margin-left: auto;
		margin-right: auto;
	}

	.main_div {
		//width: 600px;
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}

	.div1{
		//text-align:center;
		//width: 760px;		※右側にずれる
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.div2{	width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
	.info{	width: 540px;
		margin-left: auto;
		margin-right: auto;
	}
	.info2{	width: 540px;
		margin-left: auto;
		margin-right: auto;
	}
	
	
	.div_info{
		width: 540px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.div_top{
		width: 600px;
		color: #555555;
		//background-color: whitesmoke;
		margin-left: auto;
		margin-right: auto;
		padding: 5px;
	}
	
	.div_bbs{
		width: 590px;
		margin:	10px auto 10px auto;
		padding: 5px;
	}
	.ads_banner	{	width: 250px;
			}
	.top_logo	{	height: 25px;
				border-radius: 3px;
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
			}
	.small_09_em	{	//font-size: 0.9em;}
	.small_05_em	{	//font-size: 0.5em;}

	.img-team-photo1{	height: 140px;
			}
}


/*	ajax通信中
	※「#overlay」だけなぜか外部ファイルだとダメなので、直接記述が必要
*/
#overlay{   
    position: fixed;
    top: 0;
    z-index: 100;
    width: 100%;
    height:100%;
    background: rgba(0,0,0,0.6);
    display: none;
}
.cv-spinner {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;  
}
.spinner {
    width: 40px;
    height: 40px;
    border: 4px #ddd solid;
    border-top: 4px #2e93e6 solid;
    border-radius: 50%;
    animation: sp-anime 0.8s infinite linear;
}
@keyframes sp-anime {
    0% { 
        transform: rotate(0deg); 
    }
    100% { 
        transform: rotate(359deg); 
    }
}
.is-hide{
    display:none;
}


/*	Aリンクタグをボタン装飾　*/
.btn-flat-border {
	display: inline-block;
	padding: 0.3em 1em;
	text-decoration: none;
	color: #67c5ff;
	border: solid 1px #67c5ff;
	border-radius: 3px;
	transition: .4s;
	background-color:white;
	font-size: 14px;
}
  
.btn-flat-border:hover {
	background: #67c5ff;
	color: white;
}

.btn-flat-border2 {
	display: inline-block;
	padding: 0.2em 0.5em;
	margin-left: 4px;
	margin-bottom: 8px;
	text-decoration: none;
	color: #67c5ff;
	border: solid 1px #67c5ff;
	border-radius: 3px;
	transition: .4s;
	background-color:white;
	font-size: 12px;
}
  
.btn-flat-border2:hover {
	background: #67c5ff;
	color: white;
}


/*	画像表示用	*/
.gallery_wh {
  width: 190px;
  height: 132px;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.gallery > ul {
  margin-bottom: 0;
}
.gallery > ul > li {
  margin-bottom: 15px;
}
.gallery > ul > li a {
  border: 3px solid #FFF;
  border-radius: 3px;
  display: block;
  overflow: hidden;
  position: relative;
  float: left;
}
.gallery > ul > li a > img {
  -webkit-transition: -webkit-transform 0.15s ease 0s;
  -moz-transition: -moz-transform 0.15s ease 0s;
  -o-transition: -o-transform 0.15s ease 0s;
  transition: transform 0.15s ease 0s;
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  width: 100%;
}
.gallery > ul > li a:hover > img {
  -webkit-transform: scale3d(1.1, 1.1, 1.1);
  transform: scale3d(1.1, 1.1, 1.1);
}
.gallery > ul > li a:hover .gallery-poster > img {
  opacity: 1;
}
.gallery > ul > li a .gallery-poster {
  background-color: rgba(0, 0, 0, 0.1);
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: background-color 0.15s ease 0s;
  -o-transition: background-color 0.15s ease 0s;
  transition: background-color 0.15s ease 0s;
}
.gallery > ul > li a .gallery-poster > img {
  left: 50%;
  margin-left: -10px;
  margin-top: -10px;
  opacity: 0;
  position: absolute;
  top: 50%;
  -webkit-transition: opacity 0.3s ease 0s;
  -o-transition: opacity 0.3s ease 0s;
  transition: opacity 0.3s ease 0s;
}
.gallery > ul > li a:hover .gallery-poster {
  background-color: rgba(0, 0, 0, 0.5);
}
.gallery .justified-gallery > a > img {
  -webkit-transition: -webkit-transform 0.15s ease 0s;
  -moz-transition: -moz-transform 0.15s ease 0s;
  -o-transition: -o-transform 0.15s ease 0s;
  transition: transform 0.15s ease 0s;
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  height: 100%;
  width: 100%;
}
.gallery .justified-gallery > a:hover > img {
  -webkit-transform: scale3d(1.1, 1.1, 1.1);
  transform: scale3d(1.1, 1.1, 1.1);
}
.gallery .justified-gallery > a:hover .gallery-poster > img {
  opacity: 1;
}
.gallery .justified-gallery > a .gallery-poster {
  background-color: rgba(0, 0, 0, 0.1);
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: background-color 0.15s ease 0s;
  -o-transition: background-color 0.15s ease 0s;
  transition: background-color 0.15s ease 0s;
}
.gallery .justified-gallery > a .gallery-poster > img {
  left: 50%;
  margin-left: -10px;
  margin-top: -10px;
  opacity: 0;
  position: absolute;
  top: 50%;
  -webkit-transition: opacity 0.3s ease 0s;
  -o-transition: opacity 0.3s ease 0s;
  transition: opacity 0.3s ease 0s;
}
.gallery .justified-gallery > a:hover .gallery-poster {
  background-color: rgba(0, 0, 0, 0.5);
}
.gallery .video .gallery-poster img {
  height: 48px;
  margin-left: -24px;
  margin-top: -24px;
  opacity: 0.8;
  width: 48px;
}
.gallery.dark > ul > li a {
  border: 3px solid #04070a;
}
.home .gallery {
  padding-bottom: 80px;
}

#aniimated-thumbnials .gallery a {
  width: 190px;
  height: 132px;
}
