@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
/* CSS Document */

/* color-asset
================================================ */
:root{
	--color-bg-base: #FFFFFF;
	--color-blue01: #3463FF;
	--color-blue02: #5194CD;
	--color-purple01: #6F00FF;
	--color-pink01: #F57B7F;
	--color-red01: #FF6161;
	--color-orenge01:#ff7900;
	--color-yellow01:#fcff00;
	--color-gray01: #FAFAFA;
	--color-gray02: #EEEEEE;
	--color-font01: #000000;
	--color-font02: #5F6368;
	--color-font03: #616161;
	--color-font04: #969696;
	--color-font05: #FFFFFF;
	
	--color-maypage-menu01: #000000;
	
	--color-button01: #1A73E8;
	--color-button02: #FFFFFF;
	
	--page-width-base: 90%;
}

/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}legend{color:#000}#yui3-css-stamp.cssreset{display:none}


/*------------------------------------------------------
 Base (Mobile First)
------------------------------------------------------*/
body{
	color: #333;
	width: 100%;
	line-height: 1.6;
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', sans-serif, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
}

h1 {
	font-size: 2em;
}

h2 {
	font-size: 1.5em;
}

h3 {
	font-size: 1.17em;
}

h4 {
	font-size: 1.12em;
}

h5 {
	font-size: .83em;
}

h6 {
	font-size: .75em;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	line-height: 1.4;
}

img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

a{
	color: var(--color-blue01);
	text-decoration: none;
}

/* clearfix */
.clearfix:before,
.clearfix:after {
	content: '';
	display: table;
}

.clearfix:after {
	clear: both;
}

/* For IE 6/7 only */
.clearfix {
	*zoom: 1;
}

.wrapper{

    position: relative;
	/*padding-bottom: 50px;*/
}

/* button
================================================ */
a.blue-button,button.blue-button{
	display: inline-block;
	background-color: var(--color-button01);
	color:var(--color-font05);
	border:none;
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}
a.green-button,button.green-button{
	display: inline-block;
	background-color: green;
	color:white;
	border:none;
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}
a.red-button,button.red-button{
	display: inline-block;
	background-color: var(--color-button01);
	color:red;
	border:none;
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}
a.white-button,button.white-button{
	display: inline-block;
	background-color: var(--color-button02);
	color:var(--color-button01);
	border:solid 1px var(--color-button01);
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}
a.orange-button,button.orange-button{
	display: inline-block;
	background-color: var(--color-button02);
	color:var(--color-orenge01);
	border:solid 1px var(--color-orenge01);
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}
a.yellow-button,button.yellow-button{
	display: inline-block;
	background-color: var(--color-yellow01);
	color:var(--color-blue01);
	border:solid 1px var(--color-yellow01);
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}
a.gray-button,button.gray-button{
	display: inline-block;
	background-color: gray;
	color:var(--color-font05);
	border:none;
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}
a.list-button,button.list-button{
	display: inline-block;
	padding-top:0.2em;
	padding-bottom:0.2em;
	padding-left:0.5em;
	padding-right:0.5em;
	border-radius: 0.2em;
	font-weight:normal;
	text-align: center;
	margin:0.1em;
}

a.red-button,button.red-button{
	display: inline-block;
	background-color: red;
	color:var(--color-font05);
	border:none;
	font-weight: bold;
	padding-top:0.8em;
	padding-bottom:0.8em;
	padding-left:1em;
	padding-right:1em;
	border-radius: 0.5em;
	min-width:100px;
	text-align: center;
}

/* Input
================================================ */
.input-formarea-field input[type="text"],
.input-formarea-field input[type="date"],
.input-formarea-field input[type="datetime"],
.input-formarea-field textarea,
.input-formarea-field input[type="password"],
.input-formarea-field select {
	/*基本のスタイル*/
	border: solid 2px #ccc;
	border-radius: 5px;
	box-shadow: none;
	padding: 0.8em;
	width: calc(100% - 1.6em - 4px);
	/*フォーカスしたときのトランジション設定 すべてのプロパティが0.5秒で切り替わる*/
	transition: all 0.5s;
}

.input-formarea-field input[type="text"]:focus,
.input-formarea-field input[type="date"]:focus,
.input-formarea-field input[type="datetime"]:focus,
.input-formarea-field textarea:focus,
.input-formarea-field input[type="password"]:focus,
.input-formarea-field select:focus {
	/*input要素にフォーカスした時の影と枠をつける*/
	box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.4);
	border: solid 2px #666;
}

.input-formarea-field{
	margin:0px;
	padding:0px;
	margin-bottom:1.5em;
}
.input-formarea-field label{
	display:inline-block;
	margin-bottom: 1em;
	color:#fff;
	padding-bottom:0.2em;
	padding-right:1.5em;
	padding-left:1.5em;
	background-color:var(--color-font03);
}
.input-formarea-field a{
	display: float;
}

/* message
================================================ */
.flash_message{
	background-color: var(--color-yellow01);
	color:#ff0000;
	padding-top:0.5em;
	padding-bottom:0.5em;
	margin-bottom:1em;
}
.flash_message_error{
	background-color: red;
	color:white;
	padding-top:0.5em;
	padding-bottom:0.5em;
	margin-bottom:1em;
}

/* Table
================================================ */
table.table-datalist {
  border-collapse: collapse;
  width: 100%;
  margin-bottom:2em;
}
.table-datalist th,
.table-datalist td {
	padding: 1rem 1rem;
	text-align: center;
	border-bottom: 1px solid #ddd;
}
.table-datalist-heading {
	display: none;
}
.table-datalist td {
	display: block;
}
.table-datalist th {
	font-weight: normal;
	font-size: .875rem;
	color: #666;
	background: #eee;
}
.table-datalist caption {
	padding:0.3em;
	padding-left:2em;
	padding-right:2em;
	margin-bottom:0.3em;
	display: inline-block;
	color:#fff;
	background: -moz-linear-gradient(65deg, #F13F79, #FFC778); 
	background: -webkit-linear-gradient(65deg, #F13F79, #FFC778); 
	background: linear-gradient(65deg, #F13F79, #FFC778);
}
.table-datalist-h {
	background: #eee;
}
.table-datalist td::before {
    content: attr(data-label);
    font-size: .875rem;
    color: #999999;
    display: block;
    margin-bottom: 0.25rem;
}

/* header
================================================ */
header {

	background-color: var(--color-bg-base);
	padding-top:0.5em;
	padding-bottom:0.5em;
	margin-bottom:0.5em;
	border-bottom:#cccccc solid 1px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);

	position:fixed;
	width:100%;
	height: 40px;
	z-index: 10;
	
}
#header-box-pc{
	display: none;
}
#header-box-mb {
	display:flex;
	position: relative;
	align-items:center;
	width:100%;
}
.header-box-mb-menu-item,.header-box-mb-signin,.header-box-mb-button{
	margin-left:0.5em;
	padding-bottom: 0.5em;
}
.header-box-mb-menu-item a{
	color:var(--color-font04);
}
.header-box-mb-menu-item .administrator{
	color:var(--color-red01);
	font-weight: bold;
}
.header-box-mb-menu-item .owner{
	color:var(--color-pink01);
	font-weight: bold;
}
.header-box-mb-menu-item .menber{
	color:var(--color-font01);
	font-weight: bold;
}
.header-box-mb-menu-item .agency{
	color:var(--color-orenge01);
	font-weight: bold;
}
.header-box-mb-signin{
	margin-top:1em;	
}
.header-box-mb-signup{
	margin:auto;
}
.header-box-mb-left{
	width:10%;
	padding-left: 1.2em;
}
.header-box-mb-center{
	width:80%;
	text-align: center;
}
.header-box-mb-right{
	width:10%;
	padding-right: 1.2em;
}
.header-box-mb-logo{
	margin:auto;
}
.header-box-mb-logo,.header-box-pc-left-logo,.site-logo{
	position: relative;
	width:200px;
	height:40px;
}
.header-box-mb-logo img,.header-box-pc-left-logo img,.site-logo img{
	width: 200px;
	height: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
#nav-open {
	display:block;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;/*線の太さ*/
  width: 25px;/*長さ*/
  border-radius: 3px;

  background: #555;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -8px;
}
#nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;/*最前面に*/
  width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 330px;/*最大幅（調整してください）*/
  height: 100%;
  background: #fff;/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);/*左に隠しておく*/
  text-align: center;
	
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
}

/*ハンバーガーメニューの中身もろもろ*/
.hamburger-top {
	background-color: var(--color-bg-base);
	position:relative;
	text-align: center;
	padding-bottom:15px;
	font-size: 1.5em;
	font-weight: bold;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}
.humburger-top .cancel{
    padding: 3px 3px;
}

.cancel {
	cursor: pointer;
	z-index: 99;
}

.cancel:before {
  display: block;
  content: "";
}
.hamburger-border{
	border-bottom: solid #969696 1px;
	margin-bottom:1.5em;
}

/* form-asset
================================================ */
#event_datetimes{
	padding-top:0.5em;
}
.event_datetime_box{
	padding-top:0.5em;
	padding-bottom:0.5em;
}
.deleteEventDateTime{
	margin-right:0.5em;
	display: inline-block;
	background-color: var(--color-orenge01);
	color:var(--color-font05);
	border:solid 1px var(--color-orenge01);
	font-weight: bold;
	padding-top:0.5em;
	padding-bottom:0.5em;
	padding-left:0.8em;
	padding-right:0.8em;
	text-align: center;
}

/* contents
================================================ */
main {
	padding-top: 55px;
	z-index: 1;
	display: flex;
}
.main-width-setting{
	margin-right:3em;
	margin-left:3em;
	width:var(--page-width-base);
	margin:auto;
}
.mypage-pc-menu{
	display:none;
	width:0%;
}
.mypage-main{
	text-align:center;
	width:100%;
	border-bottom:#cccccc solid 1px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}
.mypage-main-event-name{
	padding-top:0.5em;
	padding-bottom:0.5em;
	display: block;
	background-color:#eeeeee;
	border-bottom:#cccccc solid 1px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}
.mypage-main-midashi{
	font-size:1.5em;
	padding-top:0.5em;
	padding-left:1em;
	padding-right:1em;
	padding-bottom:0.5em;
	border-bottom:#cccccc solid 1px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
	color: #FF7C00;
	font-weight: bold;
	background: -webkit-linear-gradient(top, #FFB76B 0%, #FFA73D 50%, #FF7C00 51%, #FF7F04 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.mypage-main-text{
	padding-top:1.6em;
	padding-left:1.6em;
	padding-right:1.6em;
	padding-bottom:1.6em;
}
.mypage-main-text-box{
	flex-direction:row;
	padding-top:0.8em;
	padding-bottom:0.8em;
	border:none;
}
.mypage-main-text-box-label{
	padding-left:1em;
	padding-right:1em;
	padding-top:0.5em;
	padding-bottom:0.5em;
	color:#fff;
	background: -moz-linear-gradient(65deg, #F13F79, #FFC778); 
	background: -webkit-linear-gradient(65deg, #F13F79, #FFC778); 
	background: linear-gradient(65deg, #F13F79, #FFC778);
}
.mypage-main-text-box-label-blue{
	padding-left:1em;
	padding-right:1em;
	padding-top:0.5em;
	padding-bottom:0.5em;
	color:#fff;
	background: #2193b0;  /* fallback for old browsers */
	background: -webkit-linear-gradient(to right, #6dd5ed, #2193b0);  /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to right, #6dd5ed, #2193b0); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

.mypage-main-text-box-data{
	padding-left:1em;
	padding-right:1em;
	padding-top:0.5em;
	padding-bottom:0.5em;
}
.mypage-main-text-leadtext{
	font-size:0.8em;
}
.mypage-main-text-formarea{
	margin-top:10px;
}
.mypage-main-text-button{
	display: flex;
	margin-bottom:10px;
}
.mypage-main-text-grid{
	margin-bottom:10px;
}
.mypage-main-text-js-select{
	padding-top:1em;
	padding-bottom:1em;
}
.header-box-mb-menu-box{
	padding-bottom:1em;
	padding-left:1.5em;
	padding-right:1.5em;
}
.header-box-mb-menu-category{
	font-weight: bold;
	background: -moz-linear-gradient(65deg, #F13F79, #FFC778); 
	background: -webkit-linear-gradient(65deg, #F13F79, #FFC778); 
	background: linear-gradient(65deg, #F13F79, #FFC778);
	margin-bottom: 0.5em;
	padding-top: 0.3em;
	padding-bottom: 0.3em;
	color:#ffffff;
}
.header-box-mb-menu-category-blue{
	font-weight: bold;
	background: #2193b0;  /* fallback for old browsers */
	background: -webkit-linear-gradient(to right, #6dd5ed, #2193b0);  /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to right, #6dd5ed, #2193b0); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	margin-bottom: 0.5em;
	padding-top: 0.3em;
	padding-bottom: 0.3em;
	color:#ffffff;
}


/* footer
================================================ */
footer {
	/*position: absolute;/*←絶対位置*/
    bottom: 0; /*下に固定*/
	width:100%;
	height:50px;
}
.footer-box{
	background-color:var(--color-gray01);
	
}
.footer-box-dat{
	margin:auto;
	font-size:0.7em;
	color:var(--color-gray03);
	margin-right:3em;
	margin-left:3em;
}
.footer-box-dat-logo{
	text-align: center;
}
.footer-box-dat-logo img{
	width: 200px;
	height: auto;
	padding-top:2em;
}
.footer-box-dat-copyright{
	text-align: center;
	padding-top:1em;
	padding-bottom:2em;
}

/*------------------------------------------------------
 Tablet ~
------------------------------------------------------*/
@media screen and (min-width:768px) {

  /* タブレット端末から効くスタイル */

}


/*------------------------------------------------------
 PC
------------------------------------------------------*/
@media screen and (min-width:920px) {
  /* PCから効くスタイル */
	header {
		padding-top:0.5em;
		padding-bottom:0.5em;
		margin-bottom:0.5em;
	}
	#header-box-mb{
		display:none;
	}
	#header-box-pc {
		display:flex;
		width:100%;
	}
	.header-box-pc-left{
		width:60%;
		display:flex;
		align-items:center;
		margin-left: 1.2em;
	}
	.header-box-pc-left-logo{
		margin-right: 2em;
	}
	.header-box-pc-left-logo img{

	}
	.header-box-pc-left-menu{
		margin-right: 1em;
		font-size:0.8em;
	}
	.header-box-pc-left-menu a{
		color:var(--color-font04);
	}
	.header-box-pc-right{
		width:40%;
		justify-content: flex-end;
		display:flex;
		align-items:center;
		margin-right: 1.2em;
	}
	.header-box-pc-right-menu{
		margin-left:1em;
		font-size:0.8em;
		font-weight: bold;
	}
	.header-box-pc-right-menu .administrator{
		color:var(--color-red01);
		font-weight: bold;
	}
	.header-box-pc-right-menu .owner{
		color:var(--color-pink01);
		font-weight: bold;
	}
	.header-box-pc-right-menu .member{
		color:var(--color-font01);
		font-weight: bold;
	}
	.header-box-pc-right-menu .agency{
		color:var(--color-orenge01);
		font-weight: bold;
	}
	.mypage-pc-menu{
		display:block;
		width:300px;
		--background-color: var(--color-maypage-menu01);
		background: -moz-linear-gradient(65deg, #F13F79, #FFC778); 
		background: -webkit-linear-gradient(65deg, #F13F79, #FFC778); 
		background: linear-gradient(65deg, #F13F79, #FFC778);
		margin: 0 auto;
		min-height: 100%;
		color:var(--color-font05);
	}
	.mypage-pc-menu-blue{
		display:block;
		width:300px;
		--background-color: var(--color-maypage-menu01);
		background: #2193b0;  /* fallback for old browsers */
		background: -webkit-linear-gradient(to right, #6dd5ed, #2193b0);  /* Chrome 10-25, Safari 5.1-6 */
		background: linear-gradient(to right, #6dd5ed, #2193b0); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
		margin: 0 auto;
		min-height: 100%;
		color:var(--color-font05);
	}
	.mypage-pc-menu-box{
		margin-left:1.5em;
		padding-top:0.75em;
		padding-bottom:0.75em;
	}
	.mypage-pc-menu-box-category{
		font-weight: bold;
		color:var(--color-font05);
		font-size:0.7em;
	}
	.mypage-pc-menu-box ul li{
		margin-top:0.2em;
		margin-left:1em;
		font-size:0.9em;
	}
	.mypage-pc-menu-box ul li a{
		color:var(--color-font05);
	}
	.mypage-main{
		text-align:left;
	}
	.mypage-main-event-name{
		padding-bottom:0.5em;
		padding-left:1.5em;
	}
	.mypage-main-midashi{

	}
	.mypage-main-text{

	}
	.mypage-main-text-box{
		display:flex;
		border-bottom:1px solid #ccc;
	}
	.table-datalist-heading {
		display:table-row;
	}
	.table-datalist td,th {
		display:table-cell;
	}
	.table-datalist-h {
		background: #ffffff;
	}
	.table-datalist td::before {
		display: none;
	}

	/* message
	================================================ */
	.flash_message{
		padding-left:0.5em;
	}
}

.text-center {
	text-align: center;
}

.form-container {
  max-width: 600px;
  margin: 60px auto;
  padding: 40px;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.form-container h1 {
  text-align: center;
  color: #333333;
  margin-bottom: 30px;
}

.form-box {
  margin-bottom: 30px;
}

.form-box h2 {
  font-size: 20px;
  margin-bottom: 15px;
  color: #555555;
}

input[type="text"],
input[type="email"],
input[type="password"] {
  width: 100%;
  padding: 12px 10px;
  margin-bottom: 15px;
  border: 1px solid #cccccc;
  border-radius: 4px;
  box-sizing: border-box;
}

button {
  width: 100%;
  padding: 12px;
  background-color: #007bff;
  color: #ffffff;
  border: none;
  border-radius: 4px;
  font-size: 16px;
  cursor: pointer;
}

button:hover {
  background-color: #0056b3;
}
