@charset "UTF-8";
/*! サイトベース */

body,html,#wrapper {
	height: 100%;
}

#header{
	background: #000000;
	height:120px;
	text-align:left;
	position:relative;
}
#header h1{
	float:left;
	padding:20px 20px 0;
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);
	color:#FFFFFF;
}
#header h1 span{
	display:block;
	font-size:1.8rem;
	font-weight:bold;
	margin-top: 10px;
}
#header .head-right{
	min-width:400px;
	float:right;
	height:75px;
	position:relative;
	color:#FFFFFF;
}
#header .top-menu{
	float:right;
}
#header .top-menu li a{
	display:block;
	padding:10px 20px;
	text-decoration:none;
    -webkit-border-bottom-right-radius: 10px;
    -webkit-border-bottom-left-radius: 10px;
    -moz-border-radius-bottomright: 10px;
    -moz-border-radius-bottomleft: 10px;
}
#header .top-menu li.logout a{
	background:#666666;
	color:#FFFFFF;
	font-size: 1.4rem;
}
#header .bottom-menu{
	position:absolute;
	bottom:5px;
	right:0;
}
#header .bottom-menu li{
	float:left;
	margin-right:20px;
	font-size: 1.4rem;
}
#main-menu {
	width:100%;
	position:absolute;
	bottom:0;
	border-bottom:#000000 1px solid;
	background: #CFBE72;
}
#main-menu li{
	float:left;
}
#main-menu li a{
	display:block;
	color:#FFFFFF;
	padding:10px 20px;
	font-size:14px;
	text-decoration:none;
}
#main-menu li a:hover,
#main-menu li.current a{
	background: #FF0000;
	color:#FFFFFF;
}
#content{
	text-align:left;
	width:100%;
	display: table;
	height: calc(100% - 160px);
}
#content-left{
	background:#CCCCCC;
	width:240px;
	display: table-cell;
	vertical-align:top;
}
#content-right{
	display: table-cell;
	vertical-align:top;
}
#main-content{
	padding:20px;
}
#left-menu{
	padding:10px;
}
#left-menu li{
	margin-bottom:10px;
}
#left-menu li a{
	display:block;
	padding:10px 20px;
	background:#FFFFFF;
	font-size:14px;
	text-decoration:none;
	color:#333333;
}
#left-menu li.current a{
	background:#FDFBD5;
	color:#333333;
}
#content-right .title01{
	font-size:1.8rem;
	margin-bottom:20px;
	border-left:#FF8800 10px solid;
	padding-left:10px;
}
#content-right .title01 span{
	font-size:1.4rem;
}
#content-right .title01--noborder{
	font-size:1.8rem;
	margin-top: 20px;
	margin-bottom:20px;
}

#content-right .title02{
	font-size:1.6rem;
	position:relative;
	padding-left:15px;
	line-height: 1.5;
	margin-bottom: 10px;
}
#content-right .table01  .title02{
	margin-top: 10px;
}
#content-right .title02:before{
    position: absolute;
    top: 4px;
    left: 0;
    width: 12px;
    height: 12px;
    background: #077D9D;
    content: "";
}
#content-right .title03{
	font-size:1.6rem;
	font-weight: bold;
}

#footer{
	background: #000000;
	height:40px;
}
#footer p{
	text-align:center;
	color:#FFFFFF;
	padding-top:10px;font-size: 1.4rem;
}

/* login */
#login {
	position: relative;
	background-color: #D5D5D5;
	font-size: 1.4rem;
}
#login form {
	width:600px;
	margin: auto;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%); /* Safari用 */
	transform: translateY(-50%);
	background:#FFFFFF;
	box-shadow:rgba(150, 150, 150, 0.458824) 3px 3px 10px 0px;
}
#login form h1{
	padding:20px 20px;
	background:#000000;
	color:#FFFFFF;
}
#login form h1 span{
	display:block;
	font-size:2.0rem;
	font-weight:bold;
	margin-top: 10px;
}
#login form dl{
	padding:20px 60px 10px;
}
#login form dd{
	margin-top: 5px;
	padding-bottom:10px;
}
#login .login-submit {
	text-align: center;
	padding-bottom: 20px;
}
#login form .login-error{
	color:#FF0000;
	margin-bottom:10px;
}

/* form */
form p {
	font-size: 1.4rem;
	margin-bottom: 5px;
}
#form-content .add-top {
  padding-bottom:10px;
  text-align:right;
}
#form-item-list {
  display:none;
  position:absolute;
  z-index:500;
  background:#FFFFFF;
  max-width:50%;
  min-width:200px;
}
#content-right #form-item-list h3 {
  padding:10px 20px;
  background: #077D9D;
  color:#FFFFFF;
  font-size:16px;
}
#content-right #form-item-list h3:before{
  content:none;
}

#form-item-list .item-inner{
  padding:20px;
}
#form-item-list .content-inner{
  padding:20px;
  display:none;
}
#form-item-list ul {
  margin: -5px -5px 20px -5px;
}
#form-item-list li {
  float:left;
  margin:5px;
}
#content-right #form-item-list h4 {
  clear:both;
  border-bottom:#CCCCCC 1px solid;
  margin-bottom:10px;
  padding-bottom:5px;
}
#form-item-list .content table {
  width:500px;
  margin-bottom:10px;
}
#form-content table .edit-box{
  width:150px;
  text-align:center;
  vertical-align:central;
}
#form-content table .edit-box a img{
  width:25px;
  height:auto;
  margin:0 3px;
}
#item-form .content .sub-ttl02{
  margin-top:20px;
  margin-bottom:10px;
  border-bottom:#CCCCCC 1px solid;
  padding-bottom:5px;
}
#item-form .content .select-item-list{
  margin-top:10px;
  margin-bottom:0;
}
#item-form .content .select-item-list li{
  border:#CCCCCC 1px solid;
  padding:5px 10px;
  background:#FFFFFF;
  white-space:nowrap;
}
#item-form .content .select-item-list li .btn{
  padding:0 5px;
  margin-left:10px;
}


/* TOP */
@media all and (-ms-high-contrast: none) {
	#main-content form {
		width: 100%;
		max-width: 800px;
	}
}

/* cassette */
.cassette-add-top {
  padding-bottom:20px;
  text-align:right;
}
#cassette-list {
  display:none;
  position:absolute;
  z-index:500;
  background:#FFFFFF;
  width:80%;
  max-width: 1005px;
}
#cassette-list h3 {
  padding:10px 20px;
  background: #077D9D;
  color:#FFFFFF;
  font-size:16px;
}
#cassette-list .item-inner{
  padding:20px;
}
#cassette-list li {
  float:left;
  margin:8px;
}
#cassette-list li p {
  margin-top:5px;
}
#cassette-list .cassette-parts .btn-box {
  text-align:center;
}
#cassette-list .cassette-parts .btn-box button {
  margin:20px 10px 0;
}
#cassette-content {
	font-size: 1.3em;
}
#cassette-content .cassette-item {
  position:relative;
  min-height: 30px;
  word-break: break-all;
}
#cassette-content .edit-box {
  display:none;
  position:absolute;
  top:0;
  left:0;
  box-sizing: border-box;
  width:100%;
  text-align:right;
  background-color: rgba(0,0,0,0.5);
  padding:3px 5px;
  z-index: 100;
}
#cassette-content .edit-box img {
  width:20px;
  height:auto;
}
#cassette-add-form td {
  vertical-align:top;
}
#cassette-add-form td img {
  width:100%;
}

#cassette-add-form .cassette-btn{
  margin-top:10px;
  text-align:right;
}

/* confirmBox */
#confirmOverlay{
	display: none;
	width: 100%;
	height:100%;
	text-align: center;
	position: fixed;
	top: 0;
	z-index: 1000;
	background: rgba(0,0,0,0.7);
}

#confirmBox{
	background:#FFFFFF;
	width:460px;
	position:fixed;
	left:50%;
	top:50%;
	margin:-130px 0 0 -230px;
}
#confirmBox h1{
    padding: 10px 20px;
    background: #000000;
    color: #FFFFFF;
    font-size: 16px;
}
#confirmBox p{
	padding: 20px;
	font-size: 1.4rem;
	line-height: 1.5;
}
#confirmButtons{
	padding-bottom:20px;
	text-align:center;
}
#confirmBox .button{
	margin:0 10px;
}

/* img-list */
#img-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin-right: -1%;
	overflow: auto;
}
#img-list li {
	width: 24%;
	margin: 10px 1% 0 0;
	position: relative;
}
#img-list img {
	width: 100%;
}
#img-list .del {
	position: absolute;
	top: 0;
	right: 0;
	display: inline-block;
	font-size: 1.6rem;
	font-weight: bold;
	color: #FFFFFF;
	text-decoration: none;
	background: #999999;
	padding: 0 5px;
}




/*----------------------------------
Overlay
----------------------------------*/
#overlay{
	display: none;
	width: 100%;
	height:100%;
	text-align: center;
	position: fixed;
	top: 0;
	z-index: 100;
	background: rgba(0,0,0,0.7);
}

/*----------------------------------
modal
----------------------------------*/
#modal-win{
	display: none;
	position:absolute;
	top:0;
	left: 0;
	right: 0;
	bottom: 0;
	margin:auto;
	background:#FFFFFF;
	width:600px;
	z-index:10000;
}
#modal-win .modal-main{
	padding:20px 20px 0 20px;
}
#modal-win .modal-main h2{
	background:#0077A2;
	color:#FFFFFF;
	font-size:14px;
	margin-bottom:20px;
	padding:5px;
}
#modal-win .modal-main table{
	text-align:left;
}


.ui-datepicker {
	font-size: 1.4rem;
}

.table01 .approval td {
	background:#FFDCF9;
}

/* team-japan */
.team-japan-stats {
	margin: 40px 0;
}
.team-japan-stats h3 {
	margin-bottom: 10px;
}
.team-japan-stats h3 * {
	vertical-align: middle;
}
.team-japan-stats .stats-table {
	table-layout: fixed;
}
.team-japan-stats .stats-table th {
	text-align: center;
}

/* organization */
.table01 .organization-img * {
	vertical-align: top;
}
.table01 .organization-img img {
	width: 300px;
}


.sponsor-img img {
	height: 40px;
}

.movie_img img {
	width: 200px;
}


/* form */
#form-content .add-top {
  padding-bottom:10px;
  text-align:right;
}
#form-enquete-list {
  display:none;
  position:absolute;
  z-index:500;
  background:#FFFFFF;
  max-width:50%;
  min-width:200px;
}
#content-right #form-enquete-list h3 {
  padding:10px 20px;
  background: #077D9D;
  color:#FFFFFF;
  font-size:16px;
}
#content-right #form-enquete-list h3:before{
  content:none;
}

#form-enquete-list .enquete-inner{
  padding:20px;
}
#form-enquete-list .content-inner{
  padding:20px;
  display:none;
}
#form-enquete-list ul {
  margin: -5px -5px 20px -5px;
}
#form-enquete-list li {
  float:left;
  margin:5px;
}

#content-right #form-enquete-list h4 {
  clear:both;
  border-bottom:#CCCCCC 1px solid;
  margin-bottom:10px;
  padding-bottom:5px;
}
#form-enquete-list .content table {
  width:500px;
  margin-bottom:10px;
}
#form-content table .edit-box{
  width:150px;
  text-align:center;
  vertical-align:central;
}
#form-content table .edit-box a img{
  width:25px;
  height:auto;
  margin:0 3px;
}
#enquete-form .content .sub-ttl02{
  margin-top:20px;
  margin-bottom:10px;
  border-bottom:#CCCCCC 1px solid;
  padding-bottom:5px;
}
#enquete-form .content .select-enquete-list{
  margin-top:10px;
  margin-bottom:0;
}
#enquete-form .content .select-enquete-list li{
  border:#CCCCCC 1px solid;
  padding:5px 10px;
  background:#FFFFFF;
  white-space:nowrap;
}
#enquete-form .content .select-enquete-list li .btn{
  padding:0 5px;
  margin-left:10px;
}
#form-event-item-list {
  display:none;
  position:absolute;
  z-index:500;
  background:#FFFFFF;
  max-width:50%;
  min-width:200px;
}
#form-event-item-list th {
  padding:10px 20px;
  background: #077D9D;
  color:#FFFFFF;
  font-size:16px;
}

/* 抽選（募集内容）画面用。(?module=campaign_item_list) */
/* アップされたファイルのファイル名表示用div */
.csv-upload__container {
  position: relative;
  width: 143px;
}
/* <input type="file" class="csv-upload__hidden-input"> */
.csv-upload__hidden-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  opacity: 0;
}
/* アップ後、画面に表示するファイル名 */
.csv-upload__fileNames {
  margin: 20px 0 20px 10px;
  font-size: 1.2rem;
}
/* 削除ボタン */
.file-item button {
    color: #000;
    border: 1px solid;
	margin-left: 30px;
    padding: 0px 10px;
    cursor: pointer;
}

/*----------------------------------
utility
----------------------------------*/
.opacity04 {
  filter:alpha(opacity=40);
  -moz-opacity: 0.4;
  opacity: 0.4;
}
.w100 {
  width: 100%;
}
.font12 {
  font-size: 1.2rem;
}
.inline-block {
  display: inline-block;
}