body{
  margin: 0;
  padding: 0;
  color: #585858;
  background-color: #f5f5f5;
  /*background-image: url("http://www.ikemofu.jp/bugfes2019/images/last-bg.png");*/
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic'
}

* html body{
  overflow: hidden;
}
a {
  text-decoration: none;
}


/*分配ページ*/
.buttonArea{
  text-align: center;
  font-size: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

/*ボックス全体*/
.agree_check{
  text-align: center;
}

.agree_check h2{
  margin-bottom: 0;
}

.switchbox {
  margin: 10px auto;
  padding: 0;
  font-size: 1.2em;
}

.switchbox div {
  height: 0;
  overflow-y: hidden;
  transition: 0.8s;
  opacity: 0;
}

.switchbox input:checked + label + div {
  height: auto;
  opacity: 1;
}


/*分配ページ用ボタン*/
.button {
  position: relative;
  background-color: #1abc9c;
  border-radius: 4px;
  color: #fff;
  padding: 10px 40px;
  margin: 20px;
  -webkit-transition: none;
  transition: none;
  box-shadow: 0 3px 0 #0e8c73;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}

@media screen and (max-width: 768px) {
  .button{
    padding: 10px;
  }
}

.button:hover {
  background-color: #dadada;
  box-shadow: 0 3px 0 #757575;
}

.button:active {
  top: 3px;
  box-shadow: none;
}

.button::before,
.button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}

.button,
.button::before,
.button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.about{
  background: #ffffc7;
  border-radius: 10px 10px 10px 10px / 10px 10px 10px 10px;
  text-align: center;
  font-size: 1.2em;
  margin: 20px;
  padding: 20px;
}

.about h2{
  color: #7b6459;
  margin-top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.about h2::before{
  content: url("/animalfes2019/images/h2_hari_l.png");
  margin-right: 2px;
}

.about h2::after{
  content: url("/animalfes2019/images/h2_hari_r.png");
  margin-left: 2px;
}

/*pdfダウンロード用*/
.note{
  text-align: center;
  border: solid 1px #7b6459;
  padding: 0.5em;
  margin: 2.0em 0;
}

.note h2{
  margin-top: 0;
  padding: 0.5em 0;
  background-color: #7b6459;
  color: #fff;
}

.btn_pdf{
  display: inline-block;
  padding: 0.5em 1em;
  margin: 10px 0;
  text-decoration: none;
  background: #7b6459;/*ボタン色*/
  color: #FFF;
  border-bottom: solid 4px #5e4a41;
  border-radius: 3px;
}

.btn_pdf:active{
  -ms-transform: translateY(4px);
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  border-bottom: none;
}



.footer{
  text-align: center;
  padding: 10px 0;
  margin-top: 50px;
  border-top: 1px solid #cecece;
}

.footerWord{
  margin: 10px;
}

/*申し込みフォーム用*/
input[type="text"] {
	height: 1.5em;
	width: 75%;
  box-shadow: 1px 1px 4px #EBEBEB;
  -moz-box-shadow: 1px 1px 4px #EBEBEB;
  -webkit-box-shadow: 1px 1px 4px #EBEBEB;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  padding: 10px 0;
}

input[type="checkbox"] {
	width: 18px;
	height: 18px;
}

/*select*/
select{
font-size:105%;
border :1px solid #808080;
}

.cp_ipselect {
  overflow: hidden;
  width: 75%;
  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;
  margin-left: 0;
  box-shadow: 1px 1px 4px #EBEBEB;
  -moz-box-shadow: 1px 1px 4px #EBEBEB;
  -webkit-box-shadow: 1px 1px 4px #EBEBEB;
}

@media screen and (max-width: 768px) {
  .cp_ipselect.cp_sl01 {
    margin: auto;
  }
}

.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;
}

#container{
  padding: 0px 10px 0px 10px;
  background-color: #fff;
  box-shadow: 0 0 5px gray;
  margin: 0 5vw;
}

#title{
  text-align: center;
  margin-top: 0;
  padding-top: 10px;
  color: #7b6459;
}

.kaiyuu{
  text-align: center;
  font-size: 1.2em;
}

.btn01{
  display: inline-block;
  padding: 0.5em 1em;
  background: #668ad8;
  color: #FFF;
  border-bottom: solid 4px #627295;
  border-radius: 3px;
  margin: 1em;
}

#contentsArea{
  max-width: 80rem;
  margin: 0 auto;
}

.txtgray {
	color: gray;
	font-size: 0.8em;
}
/* -- //ãƒ˜ãƒƒãƒ€ãƒ¼ -- */

table {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  border: 1px solid #C2C2C2;
  box-shadow: 1px 1px 4px #EBEBEB;
  -moz-box-shadow: 1px 1px 4px #EBEBEB;
  -webkit-box-shadow: 1px 1px 4px #EBEBEB;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  padding: 7px;
  width: 100%;
  outline: none;

}

th, td {
	/*border-right:1px solid #aaa;
	border-bottom:1px solid #aaa;*/
	text-align: left;
	vertical-align: middle;
	padding: 2px;
	/*background: #EEEEFF;*/
	color: black; /*#999999;*/
}

th {
  width: 200px;
  padding: 10px;
  color: #333333;
  background: #e8e8e8;
  font-weight: normal;
}

td{
}

textarea {
	width: 95%;
	height: 7em;
}


@media screen and (max-width: 768px) {
	h1 {
    font-size: 1.5em;
	}
  th {
    display: block;
    padding: 10px 0;
    margin-bottom: 10px;
    width: 100%;
    text-align: center;
  }
  td {
    display: block;
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
  }
}
