@charset "utf-8";
/* CSS Document */
html, body {
	word-wrap: break-word;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
	background: #F7F7F7;
}
body#top {
	background: #000;
}
html {
	-webkit-overflow-scrolling: touch;
	overflow-y: scroll;
}
input[type="text"], input[type="password"], textarea, select {
	outline: none;
	border: 1px solid #CCC;
  border-radius: 5px;
  padding: 1px 5px;
}
select.form-control {
    font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
    font-size: 15px;
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 5px;
}
@media only screen and (max-width:736px) {
select.form-control {
font-size: 13px;
}
}
a.disabled {
	pointer-events: none;
	/* color: #919090; */
	opacity: 0.5;
}
input[type=submit] {
	cursor: pointer;
}
strong{
    display: block;
    color: red;
		font-size: 13px;
}
.loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin: -15px 0 0 -15px;
	z-index: 99999;
}
header {
	background: #000;
	width: 100%;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	box-shadow: 0 0 10px #999;
}
#header {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px 15px;
	box-sizing: border-box;
	position: relative;
}
@media only screen and (max-width:736px) {
    input {
        -webkit-appearance: none;
    }
    #header {
        padding: 5px 5px 15px 15px;
    }
}
nav {
	background: #FFF;
	overflow: hidden;
	clear: both;
}
ul#gnav {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
}
ul#gnav li:first-child a {
	padding-left: 0;
}
ul#gnav li a {
	padding: 15px 0;
	float: left;
	color: #333;
	font-size: 14px;
	transition: all 0.3s ease-in-out;
	margin-right: 30px;
}
ul#gnav li a.active {
	border-bottom: 3px solid #0080C0 !important;
}
ul#gnav li a:after {
	content: ">";
	margin-left: 10px;
	font-family: Arial, Helvetica, sans-serif !important;
}
ul#gnav li a:hover {
	opacity: 0.7;
}
@media only screen and (max-width:736px) {
nav{
	overflow-x: scroll;
}
ul#gnav {
	padding: 0;
	display: flex;
}

ul#gnav li:first-child a{
	padding-left: 10px;
}
ul#gnav li a {
	/* width: 38%; */
	display: block;
	padding: 10px;
	font-size: 12px;
	text-align: center;
	border-right: 1px solid #CCC;
	margin: 0;
	white-space: nowrap;
}
ul#gnav li:last-child a {
	border: none;
	/* width: 23.6%; */
}
ul#gnav li a:after {
	display: none;
}
}
#header ul#menu {
	float: right;
	margin: 3px 0 0 0;
    display: flex;
    align-items: center;
    gap: 20px;
}
#header ul#menu li {
}
#header ul#menu li img {
    display: block;
	width: 27px;
}
#header h1 {
	width: 200px;
	float: left;
	margin: 0 !important;
	padding: 0 !important;
}
@media only screen and (max-width:736px) {
#header ul#menu li {
}
#header ul#menu li img {
	width: 22px;
}
#header h1 {
	width: 150px;
}
}
#header h1 img {
	width: 100%;
}
#header ul#menu {
}
#header ul#menu li {
    display: flex;
	position: relative;
}
/* WARNING: 一時的 */
#header ul#menu li div.btn1{
	/* pointer-events: none; */
	/* color: #919090; */
	/* opacity: 0.5; */
}
#header ul#menu li div.btn1, #header ul#menu li div.btn2 {
	position: relative;
	cursor: pointer;
}
#header ul#menu li div.btn1 span {
	position: absolute;
	top: 0;
	right: 0;
	background: #C30;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 11px;
	color: #FFF;
	padding: 2px;
	width: 17px;
	height: 17px;
	line-height: 17px;
	text-align: center;
	vertical-align: middle;
	border-radius: 17px;
}
#header ul#menu li a.logout {
    color: #FFF;
    font-size: 12px;
    font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
    display: block;
    margin: 5px;
    padding: 0 5px;
    border: 1px solid #999;
    transition: all 0.3s ease-in-out;
}
#header ul#menu li a.logout:hover {
    opacity: 0.7;
}

.btn-text {
	position: absolute;
	right: 50px;
	top: 70px;
	background: #FFF;
	padding: 20px;
	box-shadow: 0 0 20px #AAA;
	z-index: 999;
	display: none;
	max-width: 200px;
}
.btn-text h2 {
	font-weight: bold;
	color: #333;
	margin-bottom: 10px;
}
.btn-text ul li {
	font-size: 13px;
	border-bottom: 1px solid #CCC;
	padding-bottom: 10px;
	margin-bottom: 10px;
	margin: 0 0 10px 0 !important;
	padding: 0 0 10px 0 !important;
	color: #333;
	float: none !important;
}
.btn-text ul li i {
	background: #EEE;
	font-size: 11px;
	padding: 3px;
}
.btn-text ul li p {
	margin: 5px 0 0 0;
}
.btn-text p.all {
	text-align: right;
	font-size: 12px;
}
.btn-text p.all a {
	color: #F6891E
}
.btn-text p.all:after {
	content: ">";
	font-family: Arial, Helvetica, sans-serif !important;
	margin-left: 5px;
	color: #F6891E;
}
ul.face-wrap {
	float: none !important;
	background: #111;
	position: absolute;
	width: 150px;
	top: 35px;
	display: none;
}
@media only screen and (max-width:736px) {
    .btn-text {
        position: absolute;
        right: 15px;
        top: 43px;
    }
    ul.face-wrap {
        right: 0;
        z-index: 2;
    }
    #header ul#menu {
    }
}
ul.face-wrap li {
	float: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
ul.face-wrap li a {
	color: #FFF;
	font-size: 14px;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
	border-bottom: 1px solid #999;
	display: block;
	padding: 10px;
	transition: all 0.3s ease-in-out;
}
ul.face-wrap li a:hover {
	opacity: 0.7;
}
ul.face-wrap li:last-child a {
	border-bottom: none;
}
.flow-header{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
    max-width: none!important;
}
.flow-header .flow-header-center{
    justify-self: center;
}
.flow-header .title{
    background: white;
    border-radius: 1.5rem;
    padding: 0.25rem;
    width: 250px;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
}
.flow-header .flow-header-end{
    justify-self: end;
}
.flow-header .link {
    display: inline-block;
    background: white;
    border-radius: 0.5rem;
    padding: 0.25rem 1rem;
}
@media only screen and (max-width:736px) {
    .flow-header{
        grid-template-columns: 1fr;
        padding: 0.5rem!important;
    }
    .flow-header-center, .flow-header-end{
        display: none;
    }
}

#wrapper {
	padding: 15px 30px;
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1200px;
	position: relative;
	height: 100vh;
}
.login-wrap {
	max-width: 500px;
	background: #111;
	box-sizing: border-box;
	padding: 50px 100px;
	box-shadow: 0 0 30px #000;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.login-wrap button.btn{
	padding: 15px 0!important;
	width: 100%!important;
}
.login-wrap input[type="text"], input[type="password"], textarea, select{
	width: 100%;
    margin: 15px 0 0 0;
    border-radius: 10px;
    border: none;
    font-size: 16px;
    padding: 7px 15px;
    margin-bottom: 30px;
}
#particles-js {
	position: fixed;
	z-index: 0;
	width: 100%;
	height: 100vh;
	background: #000;
}
h1#logo {
	text-align: center;
	width: 150px;
	margin: 25px auto;
}
h1#logo img {
	max-width: 100%;
}
@media only screen and (max-width:736px) {
	#wrapper{
		padding: 15px 20px;
	}
    h1#logo {
        width: 120px;
        margin: 40px auto 5px auto;
    }
    .login-wrap {
        height: 90vh;
        padding: 25px 20px;
        margin: 5vh auto;
        position: static;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}
/*=============================================*/
input {
	box-sizing: border-box;
}
input.username, input.password {
	width: 100%;
	margin: 15px 0 0 0;
	border-radius: 10px;
	border: none;
	font-size: 16px;
	padding: 7px 15px;
}
@media only screen and (max-width:736px) {
input.username, input.password {
	font-size: 14px;
}
}
input.mail {
	width: 100%;
	margin: 5px 0 0 0;
	border-radius: 30px;
	border: none;
	font-size: 13px;
	padding: 7px 10px;
}
input.newpassword {
	width: 100%;
	margin: 5px 0 10px 0;
	border-radius: 30px;
	border: none;
	font-size: 13px;
	padding: 7px 10px;
}
input.login {
	background: #F6891E;
	color: #FFF;
	text-align: center;
	box-shadow: 0 3px 0 #D88D2A;
	box-sizing: border-box;
	border: none;
	border-radius: 10px;
	width: 50%;
	margin: 50px auto;
	padding: 10px 0;
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 3px;
	text-shadow: 0 1px 0 #D88D2A
}
@media only screen and (max-width:736px) {
input.login {
	width: 75%;
	font-size: 16px;
	padding: 10px 0;
}
}
input.confirm {
	background: #FEB008;
	color: #FFF;
	text-align: center;
	box-shadow: 0 3px 0 #D88D2A;
	box-sizing: border-box;
	border: none;
	border-radius: 30px;
	width: 100%;
	margin: 10px 0 0 0;
	padding: 10px 0;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 3px;
	text-shadow: 0 1px 0 #D88D2A;
	margin-bottom: 3px;
}
.error {
	color: #C30;
	font-size: 12px;
	margin: 0 0 10px 0;
}
p.dontknow {
	color: #FFF;
	font-size: 12px;
	margin: 10px 0 0 0;
	letter-spacing: 1px;
	text-align: left;
}
p.dontknow:before {
	content: ">";
	font-family: Arial, Helvetica, sans-serif !important;
	margin-right: 5px;
}
p.dontknow a {
	text-decoration: underline;
	color: #FFF;
}
/*========================FOOTER=================================*/
footer {
	padding: 10px 0;
	margin: 100px 0 0 0;
}
#footer {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
}
#footer p {
	text-align: center;
	font-size: 11px;
	color: #999;
}
@media only screen and (max-width:736px) {
	footer {
			margin:0 0 0 0;
		}
#footer p {
	text-align: center;
}
}
/*===============================ラジオボタン=======================================*/
.radiobtn-wrap {
	margin: 5px 0 0 0;
}
.radiobtn-wrap input {
	display: none;
}
.radiobtn-wrap label {
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin-left: 10px;
	padding: 10px 20px;
	border-radius: 2px;
	color: #FFF;
	font-size: 12px;
	text-align: center;
	line-height: 1;
	letter-spacing: 1px;
}
.radiobtn-wrap label:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -10px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #BE1E2D;
	border-radius: 50%;
}
.radiobtn-wrap input[type="checkbox"]:checked + label:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-radius: 50%;
	background: #FFF;
}
/*===============================チェックボックス=======================================*/
.checkbtn-wrap, .radiobtn-wrap2, .radiobtn-wrap3 {
	margin: 0 0 25px 10px;
}
.checkbtn-wrap input, .radiobtn-wrap2 input, .radiobtn-wrap3 input {
	display: none;
}
.checkbtn-wrap label, .radiobtn-wrap2 label, .radiobtn-wrap3 label {
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin-left: 10px;
	padding: 0 20px;
	border-radius: 2px;
	color: #333;
	font-size: 12px;
	text-align: center;
	line-height: 1;
	letter-spacing: 1px;
}
.checkbtn-wrap label:before, .radiobtn-wrap2 label:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -10px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #FFF;
	border-radius: 50%;
	border: 2px solid #feb008;
	box-sizing: border-box;
}
.radiobtn-wrap3 label:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -10px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #FFF;
	border-radius: 50%;
	border: 2px solid #4285F4;
	box-sizing: border-box;
}
.radiobtn-wrap3 input#ScheduleIsPrivate1[type="radio"] + label:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -10px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #FFF;
	border-radius: 50%;
	border: 2px solid #666 !important;
	box-sizing: border-box;
}
.radiobtn-wrap3 input[type="radio"]:checked + label:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-radius: 50%;
	background: #4285F4;
}
.radiobtn-wrap3 input#ScheduleIsPrivate1[type="radio"]:checked + label:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-radius: 50%;
	background: #666 !important;
}
.checkbtn-wrap input[type="checkbox"]:checked + label:after, .radiobtn-wrap2 input[type="radio"]:checked + label:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-radius: 50%;
	background: #feb008;
}
/*============================================================*/

input.file {
	background: url(../img/icon/plus.png) no-repeat;
	background-size: 15px;
	width: 15px;
	height: 15px;
	border: none;
}
p.error-message {
	font-size: 12px !important;
	background: #BE1E2D;
	color: #FFF;
	margin: 12px 0 10px 0;
	border-radius: 20px;
	padding: 7px 10px;
	box-sizing: border-box;
	position: relative;
	text-align: left;
	font-weight: bold;
}
p.error-message:before {
	content: "";
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 10px solid #BE1E2D;
	position: absolute;
	top: -7px;
	left: 10px;
}
.error-alert {
	border: 2px solid #BE1E2D !important;
	box-sizing: border-box;
}
p.error-message-box {
	width: 100%;
	position: fixed;
	top: 26px;
	left: 0;
	font-size: 12px;
	z-index: 99;
	background: rgba(190,30,45,1);
	color: #FFF;
	padding: 10px 10px;
	box-sizing: border-box;
	text-align: center;
	font-weight: bold;
}
/*=================================================================*/
/* #contents {
	box-sizing: border-box;
	padding: 150px 15px 50px 15px;
	box-sizing: border-box;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
} */
#contents{
	/* max-width: 1400px; */
	margin: auto;
}
main {
	box-sizing: border-box;
	padding: 0 15px 50px 15px;
	box-sizing: border-box;
	/* max-width: 1200px; */
	margin: 0 auto;
	position: relative;
	top: 150px;
	max-width: 1200px;
	display: block;
}
main.flow{
    top: 95px;
}

h2.title {
	font-size: 24px;
	font-weight: 500;
	/* float: left; */
}
h2.title span {
	font-size: 14px;
	margin-left: 20px;
}
.registration-reception-event{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 2rem;
}
.registration-reception-event .event-link{
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
}
.registration-reception-event a{
    width: 430px;
    background: #d21b1b;
    padding: 0.5rem 1rem;
    font-weight: 700;
    font-size: 24px;
    border-radius: 2rem;
    text-align: center;
}
.registration-reception-event a.et_iot {
    display: flex;
    background: none;
    width: auto;
}
.registration-reception-event a.et_iot img{
    height: 52px;
}

@media only screen and (max-width:736px) {
    .registration-reception-event .event-link{
        width: 100%;
        margin: 0.5rem 0;
    }
    .registration-reception-event a{
        width: 100%;
        font-size: 16px;
    }
    .registration-reception-event a.et_iot {
        width: auto;
        padding: 0;
    }
    .registration-reception-event a.et_iot img{
        height: auto;
        width: 100%;
        padding: 0.5rem 0 0 0;
    }
}
.registration-reception-event a{
    color: #ffffff;
}
.registration-reception-event a:hover{
    color: #ffffff!important;
    opacity: 0.5;
}
.registration-reception-event span.font-yellow{
    color: yellow;
}
.registered-event{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background: #3e3e3e;
    color: #ffffff;
    padding: 0.5rem;
}
.registered-event .registered-event-title{
    width: 350px;
    padding: 0 0.5rem;
    font-weight: 700;
    font-size: 24px;
    text-align: center;
}
.registered-event .registered-event-explanation{
    font-size: 14px;
    font-weight: 700;
}
.registered-event .registered-event-explanation small{
    font-size: 12px;
}
.registered-event .registered-event-explanation span.font-yellow{
    color: yellow;
}
@media only screen and (max-width:736px) {
    .registered-event .registered-event-title{
        font-size: 14px;
    }
    .registered-event .registered-event-explanation{
        font-size: 12px;
    }
}

.pre-registration-banner{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 10px;
    margin: 10px 0 0 0;
}
.pre-registration-banner li img{
    width: 100%;
    vertical-align: middle;
}
@media only screen and (max-width:736px) {
    .pre-registration-banner{
        display: block;
    }
    .pre-registration-banner li{
        margin: 0.5rem 0;
    }
}

.r_notice_text{
	/* float: right; */
	color: rgb(255, 0, 0);
	font-size: 14px;
}

.box {
	margin: 20px 0;
	background: #FFF;
	border-radius: 10px;
	padding: 20px;
	box-sizing: border-box;
}
@media only screen and (max-width:736px) {
    main{
        top: 100px;
    }
    main.flow{
        top: 75px;
    }
    #contents {
        padding: 0 0 50px 0;
    }
    h2.title {
        font-size: 20px;
    }
    h2.title span {
        font-size: 11px;
        display: block;
        margin-left: 0;
    }
    .box {
        margin: 15px 0;
        padding: 15px;
    }
}
.box ul.info-box {
	overflow: hidden;
	clear: both;
}
.box ul.info-box > li {
	border-bottom: 1px solid #EEE;
	padding-bottom: 12px;
	margin-bottom: 15px;
	overflow: hidden;
	clear: both;
}
.box ul.info-box li.date {
	flex-basis: 25%;
}
.box ul.info-box li.title {
	flex-grow: 1;
	flex-basis: 75%;
	position: relative;
	padding-right: 30px;
}
.box ul.info-box li.title::after {
	position: absolute;
	top: -10px;
	right: 0;
	content: '－';
	font-size: 30px;
}
.box ul.info-box .out-text.plus li.title::after {
	content: '＋';
}
.box ul.info-box li dl {
	float: left;
	width: 100%;
}
.box ul.info-box li dl dt {
	float: left;
	clear: left;
	width: 10%;
	margin-right: 5%;
	font-size: 14px;
	color: #333;
	background: #EEE;
	text-align: center;
}
.box ul.info-box li dl dd {
	float: left;
	width: 85%;
	font-weight: bold;
	cursor: pointer;
}
.box ul.info-box li dl dd .out-text {
	transition: all 0.3s ease-in-out;
}
.box ul.info-box li dl dd .out-text:hover {
	opacity: 0.7;
}
.box ul.info-box li dl dd .out-text > ul {
	display: flex;
}

.box ul.info-box li .time {
	float: right;
	font-size: 13px;
	color: #666;
}
@media only screen and (max-width:736px) {
	.box ul.info-box li dl {
		float: none;
		width: auto;
	}
	.box ul.info-box li dl dt {
		float: none;
		clear: both;
		width: auto;
		margin-bottom: 10px;
		margin-right: 0;
		font-size: 12px;
	}
	.box ul.info-box li dl dd {
		float: none;
		width: auto;
		font-size: 14px;
	}
	.box ul.info-box li .time {
		float: none;
		text-align: right;
		font-size: 11px;
		color: #666;
		margin: 10px 0 0 0;
	}
	.box ul.info-box li dl dd .out-text > ul {
		display: block;
	}
}
/* .box ul.info-box li.title::after {
	content: "＋";
	font-size: 30px;
}
.box ul.info-box.plus li.title::after {
	content: "－";
} */
.box ul.info-box li .in-text {
	margin: 10px 0 0 0;
	padding-top: 10px;
	border-top: 1px solid #EEE;
	display: none;
}
.box ul.info-box li .in-text p {
	font-weight: normal;
	font-size: 15px;
}
@media only screen and (max-width:736px) {
.box ul.info-box li .in-text p {
	font-size: 13px;
}
}
/*========================================================================*/
ul.confirm-box {
	margin-bottom: 50px;
}
ul.confirm-box li:before, ul.confirm-box li:after {
	content: "";
	display: block;
	overflow: hidden;
	clear: both;
}
ul.confirm-box li {
	padding: 20px;
	box-sizing: border-box;
	background: #FFF;
	margin: 20px 0 30px 0;
}
ul.confirm-box li dl {
	float: left;
	width: calc(100% - (226px));
}
ul.confirm-box li dl dt {
	float: left;
	width: 20%;
	clear: left;
	text-align: center;
	font-weight: bold;
	margin-right: 5%;
	font-size: 18px;
}
ul.confirm-box li dl dt i {
	color: #666;
	display: block;
	font-size: 12px;
	font-weight: normal;
}
ul.confirm-box li dl dt span {
	display: block;
	font-size: 13px;
	border: 1px solid #999;
	padding: 2.5px 5px;
	box-sizing: border-box;
}
ul.confirm-box li dl dd {
	float: left;
	width: 70%;
}
ul.confirm-box li dl dd h3 {
	font-weight: bold;
	font-size: 18px;
}
ul.confirm-box li dl dd p.map {
	font-size: 15px;
}
ul.confirm-box li dl dd p.map a {
	text-decoration: underline;
	background: url(../img/icon-map.png) no-repeat left 50%;
	background-size: 10px;
	padding-left: 20px;
	transition: all 0.3s ease-in-out
}
ul.confirm-box li dl dd p.map a:hover {
	opacity: 0.7;
}
ul.confirm-box li .btns {
	float: right;
	width: 226px;
}
ul.confirm-box li .btns-one {
	float: right;
	width: 15%;
}
ul.confirm-box li .btns ul li, ul.confirm-box li .btns-one ul li {
	float: left !important;
	padding: 0;
	box-sizing: border-box;
	margin: 0 0 10px 0;
	width: 45%;
	text-align: center;
}
ul.confirm-box li .btns-one ul li {
	width: 100% !important;
}
ul.confirm-box li .btns ul li:nth-child(2n) {
	margin-left: 10%;
}
ul.confirm-box li .btns ul li a, ul.confirm-box li .btns-one ul li a {
	display: block;
    height: 80px;
	border-radius: 10px;
	color: #FFF;
	font-size: 13px;
	font-weight: bold;
}
ul.confirm-box li .btns ul li.edit a {
	background: url(../img/icon-edit.png) no-repeat center 10px #F6891E;
	background-size: 25px;
	padding: 50px 10px 10px 10px;
	transition: all 0.3s ease-in-out;
}
ul.confirm-box li .btns ul li.edit a:hover {
	opacity: 0.7;
}
ul.confirm-box li .btns ul li.printing a {
	background: url(../img/icon-print.png) no-repeat center 15px #F6891E;
	background-size: 40px;
	padding: 50px 10px 10px 10px;
	transition: all 0.3s ease-in-out;
}
ul.confirm-box li .btns ul li.printing a:hover {
	opacity: 0.7;
}
ul.confirm-box li .btns ul li.download a {
    font-size: 12px;
	background: url(../img/icon-download.png) no-repeat center 8px #F6891E;
	background-size: 40px;
	padding: 50px 0px 10px 0px;
	transition: all 0.3s ease-in-out;
}
ul.confirm-box li .btns ul li.download a:hover {
	opacity: 0.7;
}
ul.confirm-box li .btns ul li.display a {
    background: url(../img/icon-display.png) no-repeat center 15px #F6891E;
    background-size: 40px;
    padding: 50px 10px 10px 10px;
    transition: all 0.3s ease-in-out;
}
ul.confirm-box li .btns ul li.display a:hover {
    opacity: 0.7;
}

ul.confirm-box li .btns ul li.exhibition a {
	background: url(../img/icon-display.png) no-repeat center 5px #F6891E;
	background-size: 40px;
	padding: 50px 10px 10px 10px;
	transition: all 0.3s ease-in-out;
}
ul.confirm-box li .btns ul li.exhibition a:hover {
	opacity: 0.7;
}
ul.confirm-box li .btns ul li.exhibition a.dxexpo {
	background-color: #00a0e9;
}
ul.confirm-box li .btns ul li.entrance a {
    background: url(/img/entrance.svg) no-repeat center 12px #00a0e9;
    background-size: 32px;
    padding: 50px 10px 10px 10px;
    transition: all 0.3s ease-in-out;
}
ul.confirm-box li .btns ul li.entrance a:hover {
    opacity: 0.7;
}


p.no-entry {
	margin: 20px 0;
}
.has_btns_title{
	display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
-webkit-box-pack: justify;
	/*Android4.3*/
	-moz-box-pack: justify;
	/*Firefox21*/
	-ms-flex-pack: justify;
	/*IE10*/
	-webkit-justify-content: space-between;
	/*PC-Safari,iOS8.4*/
	justify-content: space-between;
	-webkit-box-align: end;
	/*Android4.3*/
	-moz-box-align: end;
	/*Firefox21*/
	-ms-flex-align: flex-end;
	/*IE10*/
	-webkit-align-items: flex-end;
	/*PC-Safari,iOS8.4*/
	align-items: flex-end;
}
.download_pdf ul{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
}
.download_pdf ul li{
	margin: 0 10px;
}
.download_pdf ul li:last-child{
	margin-right: 0;
}
.download_pdf ul li a {
	display: inline-block;
	border-radius: 10px;
	color: #FFF;
	font-size: 12px;
	font-weight: normal;
}
.download_pdf ul li.pdf_dl_btn a{
	/* background: url(../img/pdf.png) no-repeat 15px center #F6891E;
	background-size: 20px;
	padding: 12px 15px 12px 48px; */
	background: url(../img/pdf.png) no-repeat center 10px #F6891E;
	background-size: 20px;
	padding: 42px 10px 10px 10px;
	transition: all 0.3s ease-in-out;
}
.download_pdf ul li.pdf_dl_btn.estimate_pdf a{
	background: url(../img/pdf.png) no-repeat center 10px #0080C0;
	background-size: 20px;
}
.download_pdf ul li.pdf_dl_btn.admission a{
	background: url(../img/pdf.png) no-repeat center 10px #8ec100;
	background-size: 20px;
}
 @media only screen and (max-width:736px) {
ul.confirm-box li .btns-one {
	float: none;
	width: auto;
	margin-left: 5%;
}
ul.confirm-box li .btns-one ul li.download a {
	background: url(../img/icon-print.png) no-repeat 55px 10px #F6891E;
	background-size: 30px;
	padding: 10px 15px 10px 55px;
	transition: all 0.3s ease-in-out;
	margin: 10px 0 0 0;
}
ul.confirm-box li {
	padding: 15px;
	margin-bottom: 30px;
	color: #333;
}
ul.confirm-box li dl {
	float: none;
	width: auto;
	position: relative;
}
ul.confirm-box li dl dt {
	float: none;
	width: auto;
	clear: both;
	margin-right: 0;
	font-size: 16px;
	text-align: left;
	border-bottom: 1px solid #EEE;
}
ul.confirm-box li dl dt span {
	margin: 10px 0 0 0;
	display: inline-block;
	float: right;
	position: absolute;
	top: -15px;
	right: -5px;
	padding: 3px;
	font-size: 12px;
}
ul.confirm-box li dl dd {
	float: none;
	width: auto;
}
ul.confirm-box li .btns {
	float: none;
	width: auto;
	margin: 30px 0 0 0;
}
ul.confirm-box li dl dd h3 {
	font-weight: bold;
	font-size: 15px;
	margin: 10px 0;
}
ul.confirm-box li dl dd p.map a{
	font-size: 15px;
}
}
ul.slider {
	margin: 20px 0;
	/* overflow:hidden;
	clear: both; */
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	/* -webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between; */
}

ul.slider li {
	/* float: left; */
	/* width: 48%; */
	/* width: 24%; */
	/* margin: 0 10px; */
	padding-bottom:10px;
	/* margin-right: 1%; */
	margin: 10px;
}

/* ul.slider li:nth-child(4n){
	margin-right: 0;
} */

ul.slider li img {
	width: 100%;
}
ul.slick-dots li {
	margin: 0;
}

.slick-dots li button:before {
	font-size: 45px !important;
	color: #d9d9d9 !important;
}
 @media only screen and (max-width:736px) {
.slick-dots li button:before {
	font-size: 15px !important;
	color: #d9d9d9 !important;
}
}
.slick-dots li.slick-active button:before {
	color: rgba(0, 0, 0, 0.4) !important;
	opacity: 1 !important;
}
.slick-dots li {
	margin: 0 !important;
}
.slick-dots {
	bottom: -20px !important;
}
.slick-dots li button:before{
	opacity: .8!important;
}
.situation {
	position: relative;
}
/* 商品に見立てた枠 */
.now {
	position: absolute;
	top: -20px;
	left: -20px;
}
/* ラベル部分 左上に表示 */
.now:before {
	content: "";
	top: 0;
	left: 0;
	border-bottom: 4em solid transparent;
	border-left: 4em solid #CC3300; /* ラベルの色はここで変更 */
	position: absolute;
	z-index: 100;
}
.now:after {
	content: "ご案内中";
	display: block;
	top: 12px;
	transform: rotate(-45deg);
	color: #FFF; /* 文字色はここで変更 */
	white-space: nowrap;
	position: absolute;
	z-index: 101;
	font-size: 13px;
}
/* 商品に見立てた枠 */
.wait {
	position: absolute;
	top: -20px;
	left: -20px;
}
/* ラベル部分 左上に表示 */
.wait:before {
	content: "";
	top: 0;
	left: 0;
	border-bottom: 4em solid transparent;
	border-left: 4em solid #CCC; /* ラベルの色はここで変更 */
	position: absolute;
	z-index: 100;
}
.wait:after {
	content: "案内待ち";
	display: block;
	top: 12px;
	transform: rotate(-45deg);
	color: #FFF; /* 文字色はここで変更 */
	white-space: nowrap;
	position: absolute;
	z-index: 101;
	font-size: 13px;
}
.ml5 {
	margin-left: 5%;
}
 @media only screen and (max-width:736px) {
.ml5 {
	margin-left: 5%;
	margin-top: 5%;
}
ul.slider{
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
ul.slider li{
	width: 100%;
	padding-bottom: 20px;
}
}
.doc-all-wrap {
	border: 2px solid #CCC;
	padding: 20px;
	font-weight: bold;
	margin: 20px 0;
	color: #333;
}
.doc-all-wrap i {
	margin-right: 10px;
	font-size: 80%;
}
.doc-all-wrap dt {
	font-size: 20px !important;
}
.doc-all-wrap dt span {
	font-size: 70%;
}
.doc-all-wrap dd {
	font-size: 18px;
	font-weight: bold;
}
 @media only screen and (max-width:736px) {
.doc-all-wrap dt {
	font-size: 18px !important;
}
.doc-all-wrap dd {
	font-size: 16px;
}
}
p.explain {
	font-size: 14px;
}
 @media only screen and (max-width:736px) {
p.explain {
	font-size: 12px;
}
}
p.explain img {
	width: 15px;
	margin: 0 3px;
	position: relative;
	top: 2px;
}
.download-wrap {
	margin: 20px 0;
}
.download-wrap h3.date {
	font-size: 30px;
	font-weight: bold;
	color: #333;
	margin-bottom: 10px;
}
 @media only screen and (max-width:736px) {
.download-wrap h3.date {
	font-size: 20px;
}
}
.download-wrap h3.date span {
	font-size: 20px;
}
ul.download-list li {
	overflow: hidden;
	clear: both;
	background: #FFF;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	box-shadow: 0 0 20px #EEE;
	margin-bottom: 20px;
}
 @media only screen and (max-width:736px) {
ul.download-list li {
	display: block;
	position: relative;
}
}
ul.download-list li:last-child {
	margin-bottom: 40px;
}
ul.download-list li p {
    flex: 1 1 auto;
	padding: .25rem 0;
	font-weight: bold;
	color: #333;
}
ul.download-list li div.session-id {
    display: flex;
    align-items: center;
    background: #0080C0;
}
ul.download-list li div.session-id span {
	color: #FFF;
	padding: 1rem;
	font-family: 'Oswald', sans-serif !important;
	display: block;
	text-align: center;
	font-size: 20px;
}
@media only screen and (max-width:736px) {
    ul.download-list li p {
        float: none;
        width: auto;
        font-size: 15px;
    }
    ul.download-list li div.session-id span{
        float: none;
        width: auto;
        text-align: left;
        font-size: 16px;
    }
}
ul.download-list li .download-no, ul.download-list li .download-ok {
	display: block;
	float: right;
	width: 5%;
    margin: auto;
	text-align: center;
}
@media only screen and (max-width:736px) {
    ul.download-list li .download-no, ul.download-list li .download-ok {
        position: absolute;
        top: 0.75rem;
        right: 1.25rem;
        padding: 0;
    }
}
ul.download-list li .download-ok img, ul.download-list li .download-no img {
	width: 30px;
}
h3.subtitle {
	background: #F7F7F7;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 18px;
}
 @media only screen and (max-width:736px) {
	h3.subtitle {
		font-size:16px;
	}
 }
h3.subtitle + p {
	margin: 15px 10px;
}
.basic-box {
	margin: 20px 0;
	border-bottom: 1px solid #EEE;
	overflow: hidden;
	clear: both;
	padding: 0 10px 20px 10px;
}
.basic-box-one {
	overflow: hidden;
	clear: both;
	margin-bottom: 10px;
}
.basic-box-one.name div.form-group.row{
    display: inline-block;
    margin-right: 50px;
}
.basic-box-one.name div.form-group.row input.form-control{
    margin-left: 10px;
}
.basic-box-one.name h4{
	width: 18.2%;
	margin-right: 2.5%;
}
.basic-box-one.name p{
	width: 79%;
}
ul.basic-list {
	overflow: hidden;
	clear: both;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mr10 {
	margin-right: 10px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.no-bo {
	border-bottom: none !important;
}
ul.basic-list li {
	width: 45%;
	float: left;
}

.basic-list small.annotation{
	display: block;
	width: 100%;
	font-size: 13px;
	color: #D11855;
	margin-top: 10px;
}

/* 新規登録画面のフォーム */
.register_form input[type="text"],
.register_form input[type="password"],
.register_form textarea,
.register_form select{
	margin: inherit;
}
.register_form select{
    padding: 10px;
    font-weight: 700;
}
.register_form ul.basic-list li p {
    margin-top: 10px;
    margin-right: 0;
    width: 100%;
}

.register_form .basic-box p input{
	width: auto;
}
.register_form .basic-box p input[type="text"],
.register_form .basic-box p input[type="email"],
.register_form .basic-box p input[type="password"]{
	width: 100%;
}

.register_form .basic-box p input::placeholder{
	font-weight: normal;
	color: #aaa;
}
.register_form ul.basic-list li{
	width: 100%;
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid #EEE;
}
.register_form ul.basic-list li h4{
	width: 30%;
}

ul.basic-list.pass_reset li{
	width: 100%;
}

ul.basic-list.pass_reset li h4{
	width: 10%;
}

.register_form ul.basic-list li .purpose_events_wrap{
	width: 30%;
	float: left;
	margin-top: 0;
}

.register_form ul.basic-list.events_check_wrap li .purpose_events_wrap{
	width: 60%;
}
.register_form ul.basic-list.events_check_wrap li .purpose_events_wrap label{
	display: block;
}
.register_form ul.basic-list li:last-child{
	border-bottom: none;
}
.register_form .basic-box{
	border-bottom: none;
	padding-bottom: 0;
}
.register_form small.notice_t{
	display: block;
	margin-top: 5px;
	font-size: 14px;
}
select,
option{
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	position: relative;
	z-index: 2;
	background: transparent
}
.select_wrap{
	position: relative;
}
.select_wrap::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0, -50%)rotate(135deg);
	-moz-transform: translate(0, -50%)rotate(135deg);
	-webkit-transform: translate(0, -50%)rotate(135deg);
	display: inline-block;
	width: 5px;
	height: 5px;
	border-top: 1px solid rgba(38, 38, 38, 0.7);
	border-right: 1px solid rgba(38, 38, 38, 0.7);
	display: inline-block;
	z-index: 0;
}
	.basic-box-one.name h4{
		width: 100%;
	}
	.register_form ul.basic-list li h4{
		width: 100%;
	}
	.register_form ul.basic-list li .purpose_events_wrap{
		width: 100%;
	}
@media only screen and (max-width:736px) {
    h3.subtitle + p {
		 font-size:13px;
    }
    ul.basic-list li {
        width: auto;
        float: none;
        overflow:hidden;
        clear:both;
        margin-bottom:20px;
    }
}
.basic-box h4 {
	float: left;
	margin-right: 5%;
	width: 15.2%;
	font-weight: bold;
	color: #333;
}
ul.basic-list li h4 {
	margin-right: 5%;
	width: 40%;
}
.basic-box h4 span,
.mk_required{
	background: #D11855;
	color: #FFF;
	font-size: 12px;
	border-radius: 3px;
	padding: 3px;
	box-sizing:border-box
}
.basic-box h4 span{
	float: right;
}
.mk_required{
  font-weight: bold;
}

.basic-box p {
	float: left;
	width: 78%;
	color: #333;
	/* display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex; */
}
/* .basic-box p label{
	width: 40%;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
} */
ul.basic-list li p {
	margin-right: 5%;
	width: 50%;
}
ul.basic-list.nickname li{
    width: 100%;
}
ul.basic-list.nickname li h4{
    width: 15%;
}
@media only screen and (max-width:736px) {
    .basic-box h4 {
        float: none;
        margin-right: 0;
        width: auto;
        font-weight: bold;
        color: #333;
        font-size:13px;
    }
    ul.basic-list li h4 {
        margin-right: 0;
        width: auto;
        font-size:13px;
    }
    ul.basic-list.nickname li h4{
        margin-right: 0;
        width: auto;
        font-size:13px;
    }
    .basic-box p {
        float: none;
        width: auto;
        color: #333;
        margin:10px 0 0 0;
        font-size:13px;
    }
    ul.basic-list li p {
        margin-right: 0;
        width: auto;
    }
}
.basic-box p input {
	border: none;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding: 1px 5px;
	box-sizing: border-box;
	width: 100%;
}
ul.basic-list li:first-child {
	margin-right: 10%;
}
@media only screen and (max-width:736px) {
	ul.basic-list li:first-child {
        margin-right: 0;
    }
    .basic-box p input {
        font-size:14px;
        padding:5px;
    }
}
input.short{
    width:100px !important;
}
table.form-table {
	width: 100%;
	margin: 20px 0;
}
table.form-table th {
	width: 40%;
	font-weight: bold;
	font-size: 16px;
	padding-left: 0 !important;
}
table.form-table th, table.form-table td {
	padding: 10px;
	vertical-align: middle;
}
table.form-table th span {
	background: #D11855;
	color: #FFF;
	float: right;
	font-size: 12px;
	border-radius: 3px;
	padding: 3px
}
table.form-table td input {
	border-radius: 5px;
	border: none;
	border: 1px solid #CCC;
	padding: 5px;
	width: 100%;
	box-sizing: border-box;
}
 @media only screen and (max-width:736px) {
	 table.form-table th {
	width: auto;
	font-size:14px;
	padding:0;
	 }
	 table.form-table th,
table.form-table td{
	display:block;
}
table.form-table td{
	padding:0;
}
table.form-table td input{
	margin:10px 0 20px 0;
}
}
.submit-wrap input {
	background: #F6891E;
	border-radius: 10px;
	padding: 10px 30px;
	text-align: center;
	border: none;
	font-weight: bold;
	color: #FFF;
	transition: all 0.3s ease-in-out;
}
.submit-wrap input:hover {
	opacity: 0.7;
}
.edit-wrap input {
	background: #F6891E;
	border-radius: 10px;
	padding: 15px 100px;
	margin: 50px auto;
	display: block;
	text-align: center;
	border: none;
	font-weight: bold;
	color: #FFF;
	transition: all 0.3s ease-in-out;
}
.edit-wrap input:hover {
	opacity: 0.7;
}
p.password-btn {
	margin-bottom: 30px;
}
p.password-btn a {
	color: #0080C0;
}
h4.subtitle {
	margin: 15px 0;
	font-weight: 500px;
	font-size: 18px;
}
h4.subtitle + p {
	font-size: 14px;
}
@media only screen and (max-width:736px) {
	h4.subtitle {
	font-size: 16px;
}
h4.subtitle + p {
	font-size: 12px;
}
}
.list {
	margin: 20px 0;
}
.list__item {
	margin: 0 0 15px 0;
	padding: 0;
}
ul.basic-list li.list__item{
	display: block;
	float: none;
	width: fit-content;
}
ul.basic-list li ul.event {
	width: 55%;
	float:right;margin:10px 0 0 0 !important;
}
ul.basic-list li ul.event  li{
width:100%;
margin:0 !important;
padding:0 !important;
}
ul.basic-list li ul.event  li input{
	margin:0 10px 0 0 !important;
	position:relative;
	top:-3px;
}
 @media only screen and (max-width:736px) {
ul.basic-list li ul.event {
	width: 100%;
	float:none;margin:10px 0 0 0 !important;
}
ul.basic-list li ul.event  li input{
	margin:0 !important;
	padding:0 0 0 25px !important;
	position:relative;
	top:-14px;
}
ul.basic-list li ul.event  li:first-child{
	margin-bottom:5px !important;
}
 }
 @media only screen and (max-width:736px) {
	.list__item {
		font-size:14px;
	}
 }
.add, .tel-add {
	margin: 0 0 0 35px !important;
	padding: 0 !important;
}
.tel-add {
	margin: 10px 0 0 35px !important;
	font-size: 14px;
}
.tel-add input {
	border: none;
	border: 1px solid #CCC;
	margin: 0 10px;
}
.list__item span {
	font-size: 12px;
}
 @media only screen and (max-width:736px) {
.tel-add  span {
		 display:block;
		 margin-left:75px;
	 }
 }
.label--checkbox {
	position: relative;
	margin: 0;
	font-family: Arial, sans-serif;
	line-height: 135%;
	cursor: pointer;
	margin-right: 10px;
}
.checkbox {
	position: relative;
	/* top: -1rem; */
	/* top: -3px; */
	margin: 0 10px 0 0;
	cursor: pointer;
}
.checkbox:before {
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	content: "";
	position: absolute;
	left: 0;
	z-index: 1;
	width: 1rem;
	height: 1rem;
	border: 2px solid #CCC;
	top: 50%;
	transform: translate(0, -50%);
	-moz-transform: translate(0, -50%);
	-webkit-transform: translate(0, -50%);
}
.checkbox:checked:before {
	-webkit-transform: translate(0, -50%)rotate(-45deg);
	-moz-transform: translate(0, -50%)rotate(-45deg);
	-ms-transform: translate(0, -50%)rotate(-45deg);
	-o-transform: translate(0, -50%)rotate(-45deg);
	transform: translate(0, -50%)rotate(-45deg);
    height: .5rem;
	border-color: #F6891E;
	border-top-style: none;
	border-right-style: none;
	top: 30%;
}
.checkbox:after {
	content: "";
	position: absolute;
	top: -0.125rem;
	left: 0;
	width: 1.2rem;
	height: 1.1rem;
	background: #fff;
	cursor: pointer;
}
.form_required .checkbox:after{
    background-color: #FFFDDC;
}
.checkbox.form_required:after{
    background-color: #FFFDDC;
}
.form_required .checkbox.checked:after{
    background-color: #FFFFFF;
}
.form_error .checkbox:after {
    background: #FFB3B5;
}
.checkbox.form_error:after {
    background: #FFB3B5;
}
.is_ok .checkbox:after {
    background: #FFFFFF;
}
.checkbox.is_ok:after {
    background: #FFFFFF;
}
.checkbox:disabled:after {
    background: #ccc;
}
 @-webkit-keyframes slideUp {
 0% {
 -webkit-transform: translateY(6.25rem);
 transform: translateY(6.25rem);
}
 100% {
 -webkit-transform: translateY(0);
 transform: translateY(0);
}
}
@keyframes slideUp {
 0% {
 -webkit-transform: translateY(6.25rem);
 transform: translateY(6.25rem);
}
 100% {
 -webkit-transform: translateY(0);
 transform: translateY(0);
}
}
.join{
	float:right;
	margin:-35px 0 0 0;
}
.join a{
	background:#0080C0;
	font-weight:500;
	border-radius:10px;
	text-align:center;
	padding:10px 30px;
	color:#FFF;
	transition:all 0.3s ease-in-out;
}
.join a:hover{
	opacity:0.7;
}

 @media only screen and (max-width:736px) {
	.join{
	float:none;
	margin:20px 0;
}
.join a{
	font-size:15px;
}
 }



/* テーブル */
.table_inner {
	background: #fff;
	padding: 20px;
	border-radius: 10px;
	margin: 20px 0;
}
.table_inner table.type1{
	width: 100%;
	border: 1px solid #ddd;
	border-collapse:inherit;
}
.table_inner table.type1 th,
.table_inner table.type1 td{
	font-size: 14px;
	text-align: center;
	border: 1px solid #eee;
	padding: 10px;
}
.table_inner table.type1 th{
	font-weight: bold;
	background: #F7F7F7;
}

.table_inner table.type2{
	width: 100%;
}
.table_inner table.type2 th,
.table_inner table.type2 td{
	font-size: 14px;
	border: 1px solid #eee;
	padding: 10px;
	vertical-align: middle;
}
.table_inner table.type2 th{
	font-weight: bold;
	background: #F7F7F7;
	width: 20%;
}
.table_inner table.type2 td{
	width: 80%;
}

.table_inner table.type3{
	width: 100%;
}
.table_inner table.type3 th,
.table_inner table.type3 td{
	font-size: 14px;
	border-bottom: 1px solid #eee;
	padding: 10px;
	vertical-align: middle;
}
.table_inner table.type3 th{
	font-weight: bold;
	width: 20%;
	/* background: #F7F7F7; */
}
.table_inner table.type3 td{
	width: 80%;
}
.table_inner td.price{
	background: rgba(255, 153, 153, 0.1);
}

/* ボタン */
.btn.blue{
	background: #0080C0;
	font-weight: 500;
	border-radius: 10px;
	text-align: center;
	padding: 5px 20px;
	color: #FFF;
	transition: all 0.3s ease-in-out;
	border: none;
	margin-left: 20px;
	font-size: 14px;
	cursor: pointer;
}

/* WARNING: 無料用のボタン */
/* button.btn.btn-primary,
input[type="submit"].btn.btn-primary,
input[type="button"].btn.btn-primary{
	background: #F6891E;
	border-radius: 10px;
	padding: 15px 100px;
	margin: auto;
	display: block;
	text-align: center;
	border: none;
	font-weight: bold;
	color: #FFF;
	transition: all 0.3s ease-in-out;
	cursor: pointer;
} */
/* WARNING: 有料用のボタン */
button.btn.btn-primary,
input[type="submit"].btn.btn-primary,
input[type="button"].btn.btn-primary{
	/* text-shadow: rgb(51, 51, 51) 0px -1px 1px;
	box-shadow: rgb(51, 51, 51) 0px 0px 30px; */
	background: linear-gradient(rgb(165, 42, 42), rgb(136, 0, 0));
	border-radius: 10px;
	padding: 15px 100px;
	margin: auto;
	display: block;
	text-align: center;
	border: none;
	font-weight: bold;
	color: #FFF;
	transition: all 0.3s ease-in-out;
	cursor: pointer;
}
.btn.btn-primary.t_long{
	padding: 15px 40px;
}
input[type="submit"].btn.btn-primary.free{
	background: #F6891E;
}

button[type="submit"].btn.btn-primary.change.disable_btn{
	opacity: 0.5;
	pointer-events: none;
}
button[type="submit"].text_link{
	border: none;
	text-align: center;
	margin: 30px auto;
	display: block;
	font-weight: bold;
	font-size: 16px;
	text-decoration: underline;
	cursor: pointer;
	background: none;
}
.btn.back{
	background: #eee;
	font-weight: 500;
	border-radius: 10px;
	text-align: center;
	padding: 15px 40px;
	color: #000;
	transition: all 0.3s ease-in-out;
	border: none;
	margin-left: 20px;
	display: inline-block;
}

/* input */
input.input_text{
	border: none;
	border: 1px solid #CCC;
	border-radius: 5px;
	padding: 1px 5px;
	box-sizing: border-box;
	margin-left: 8px;
}


/* 申し込み項目/金額の確認 */
.enter_code{
	margin-top: 30px;
}
.table_wrap > p{
	font-size: 14px;
	margin: 30px 0 0 0;
}
.notice_box{
	margin-top: 20px;
}
.notice_box .t_center{
	text-align: center;
	font-size: 14px;
}
.notice_box a{
	text-decoration: underline;
}
.notice_box.type2{
	margin-bottom: 10px;
	margin-top: 15px;
}
.notice_box p{
	font-size: 14px;
	margin-bottom: 10px;
}
.notice_box small{
	font-size: 13px;
	display: block;
}
.notice_box small b{
    font-weight: bold;
}

.notice_box span{
	color: rgb(255, 0, 0);
}
.enter_code .notice{
	font-size: 13px;
	display: block;
}
.enter_code .notice_r{
	font-size: 13px;
	color: rgb(255, 0, 0);
}

.btn_area{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	text-align: center;
	-webkit-box-pack: center;
	/*Android4.3*/
	-moz-box-pack: center;
	/*Firefox21*/
	-ms-flex-pack: center;
	/*IE10*/
	-webkit-justify-content: center;
	/*PC-Safari,iOS8.4*/
	justify-content: center;
	margin: 40px 0 0 0;
}

.btn_area_left{
	margin-right: 10px;
}
.btn_area_right{
	margin-left: 10px;
}



.checkbox-wrap {
  clear: both;
  overflow: hidden;
}

.checkbox-wrap input {
  display: none;
}

.checkbox-wrap label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  margin-left: 10px;
  padding: 10px 20px;
  border-radius: 2px;
  color: #3e4956;
  font-size: 14px;
  text-align: left;
  line-height: 1;
}

.checkbox-wrap label:before {
  position: absolute;
  content: "";
  top: 50%;
  left: -10px;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  background: #CCC;
  border-radius: 50%;
}

.checkbox-wrap input[type="checkbox"]:checked+label:after {
  position: absolute;
  content: "";
  top: 50%;
  left: -4px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-radius: 50%;
  background: #FFF;
}

/*===============================ラジオボタン=======================================*/
.radiobtn-wrap input {
  display: none;
}

.radiobtn-wrap label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  margin-left: 10px;
  padding: 10px 15px;
  border-radius: 2px;
  color: #3e4956;
  font-size: 14px;
  text-align: left;
  line-height: 1;
}

.radiobtn-wrap label:before {
  position: absolute;
  content: "";
  top: 50%;
  left: -10px;
  width: 16px;
  height: 16px;
  margin-top: -10px;
  background: #f1f1f1;
  border-radius: 50%;
  border: solid 2px #d2d2d2;
}
.form_required .radiobtn-wrap label:before {
    background: #FFFDDC;
}
.radiobtn-wrap input[type="radio"]:checked+label:after {
  position: absolute;
  content: "";
  top: 50%;
  left: -4px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-radius: 50%;
  background: #5b5b5b;
}

ul.basic-list .radio-text{
    display: inline-block;
    /* width: 50%; */
}
ul.basic-list .radio-text p{
    width: 100%;
}


/* 完了画面 */
.thanks_wrap{
	background: #fff;
	padding: 0.5rem;
	border-radius: 10px;
}
.thanks_wrap .check_icon{
    text-align: center;
    font-weight: bold;
    font-size: 5rem;
    color: #585858;
}
.thanks_wrap .project{
    text-align: center;
    font-weight: bold;
    font-size: 1.5rem;
}
.thanks_wrap .title{
    text-align: center;
    font-weight: bold;
    font-size: 2rem;
}
.thanks_wrap .message{
    margin: 0 auto;
    max-width: 650px;
    padding: 0.25rem;
    font-size: 1rem;
}
.thanks_wrap .message p.center{
    text-align: center;
}
.thanks_wrap p.lead{
	font-size: 18px;
	font-weight: bold;
	color: #0080C0;
	margin-bottom: 20px;
}

.thanks_wrap p,
.thanks_wrap li{
	font-size: 14px;
}
.thanks_wrap p{
	margin-bottom: 10px;
}
.thanks_wrap small{
	font-size: 13px;
}

.thanks_wrap ul{
	margin-top: 20px;
    padding-left: 1.5rem;
}

.thanks_contact{
	margin-top: 20px;
}

.thanks_contact h3{
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 5px;
    background: #585858;
    color: #ffffff;
	/* border-bottom: 1px solid #ddd; */
}
/* .thanks_contact p{
	font-size: 13px;
} */
.thanks_contact a{
    text-decoration: underline;
}
.thanks_contact a:hover{
    opacity: 0.5;
}

.to_btns{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
}

.to_btns{
	margin-top: 60px;
}
.to_btns p{
	margin-right: 10px;
}
.to_btns a{
	/* color: #00f; */
	font-size: 14px;
	position: relative;
	display: block;
	padding: 0 15px;
}
.to_btns a::after{
	content: "";
	position: absolute;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	width: 5px;
	height: 5px;
	top: 50%;
	transform: translate(0, -50%)rotate(45deg);
	-moz-transform: translate(0, -50%)rotate(45deg);
	-webkit-transform: translate(0, -50%)rotate(45deg);
	right: 0;
	text-align: center;
}


.alert-success {
    color: #631d1d;
    background-color: #f4d8d8;
    border-color: #eec7c7;
}

.alert {
	position: relative;
	padding: .75em 1.25rem;
	border: 1px solid transparent;
	border-radius: .25rem;
	max-width: 1400px;
	margin: 0 auto 30px auto;
}

.close:not(:disabled):not(.disabled) {
    cursor: pointer;
}

button.close {
    padding: 0;
    background-color: transparent;
    border: 0;
    -webkit-appearance: none;
}
[type=reset], [type=submit], button, html [type=button] {
    -webkit-appearance: button;
}
.close {
    float: right;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: .5;
}
div#privacy_link.privacy.anchor.content_fadeIn{
height: 200px;
overflow-y: scroll;
/* margin: 50px; */
    padding: 20px;
    margin-bottom: 20px;
    border: 1px solid #ddd;
}
div#privacy_link.privacy.anchor.content_fadeIn::-webkit-scrollbar{
    width:5px;
    }/*バーの太さ*/
div#privacy_link.privacy.anchor.content_fadeIn::-webkit-scrollbar-track{
    background:#FFFFFF;
    }/*バーの背景色*/
div#privacy_link.privacy.anchor.content_fadeIn::-webkit-scrollbar-thumb{
    background:#dddddd;
    }/*バーの色*/
.privacy h3{
  font-size: 20px;
  margin-bottom: 20px;
}
.privacy h4{
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 10px;
}
.privacy ul li{
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 20px;
  text-indent: -1.2em;
  padding-left: 1.2em;
}
.privacy ul.type2 li{
    line-height: 1.5;
    margin-bottom: 5px;
}
.privacy p{
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 20px;
}
.privacy p a{
  color: #2B3990;
}
.privacy .contact_box{
    border: 1px solid #ddd;
    display: inline-block;
    padding: 10px 20px 0 20px;
}
.privacy_contact{
  margin-top: 60px;
}
.privacy_contact h3{
  font-size: 28px;
  margin-bottom: 20px;
}
.privacy_contact p{
  font-size: 14px;
  line-height: 1.8;
  padding: 0 15px;
}
.privacy_contact p a{
  color: #2B3990;
}
@media only screen and (max-width:736px){

    .table_inner_wrap{
        overflow: scroll;
    }
    .table_inner table.type1 th,
    .table_inner table.type1 td{
        white-space: nowrap;
        font-size: 12px;
    }
    .table_inner table.type2 th,
    .table_inner table.type2 td{
        display: block;
        width: 100%;
        font-size: 12px;
    }
    .table_inner table.type3 th,
    .table_inner table.type3 td{
        display: block;
        width: 100%;
        font-size: 12px;
    }
    .radiobtn-wrap label{
        font-size: 12px;
    }
    input.input_text{
        margin-left: 0;
    }
    .btn_area{
        display: block;
    }
    .btn_area_left{
        margin: 0 0 20px 0;
    }
    .btn_area_right{
        margin: 0;
    }
    .btn.blue{
        margin-left: 0;
        margin-top: 10px;
        font-size: 12px;
    }
    .btn.back{
        width: 100%;
        display: block;
        margin-left: 0;
        font-size: 14px;
        padding: 10px 0;
    }
    button.btn.btn-primary,
    input[type="submit"].btn.btn-primary,
    input[type="button"].btn.btn-primary{
        padding: 10px 0;
        width: 100%;
        display: block;
        font-size: 14px;
    }
    .thanks_wrap .title{
        font-size: 1.25rem;
    }
    .thanks_wrap p.lead{
        font-size: 16px;
    }
    .to_btns p:first-child a{
        padding-left: 0;
    }
    .to_btns a{
        font-size: 12px;
    }
    .to_btns a::after{
        width: 3px;
        height: 3px;
    }
}
@media only screen and (max-width:736px){
		div#privacy_link.privacy.anchor.content_fadeIn{
			padding: 10px;
		}
	  .privacy{
	    padding: 0 15px;
	  }
	  .privacy h3{
	    font-size: 14px;
	    margin-bottom: 15px;
	  }
	  .privacy p{
	    line-height: 1.6;
	    font-size: 11px;
	    margin-bottom: 15px;
	  }
	  .privacy ul li{
	    line-height: 1.6;
	    font-size: 13px;
	    margin-bottom: 15px;
	  }
	  .privacy_contact{
	    padding: 0 15px;
	    padding-top: 180px!important;
	  }
	  .privacy_contact h3{
	    font-size: 18px;
	    margin-bottom: 15px;
	  }
	  .privacy_contact p{
	    line-height: 1.6;
	    font-size: 13px;
	    margin-bottom: 15px;
	  }
}



#last_name,
#last_name_kana,
.last_name {
    width: 30%;
    margin-right: 5%;
}
#first_name,
#first_name_kana,
.last_name,
.first_name {
    width: 30%!important;
}

.register_form #first_name,
.register_form #first_name_kana,
.register_form .last_name,
.register_form .first_name {
    width: 41%!important;
}
@media only screen and (max-width:736px) {
	#last_name,  #last_name_kana,  #first_name,  #first_name_kana, .last_name, .first_name{
		margin: 0;
		width: 100%!important;
	}
	.register_form .last_name,
	.register_form .first_name{
		width: 100%!important;
	}
}

.register_half label{
	width: 49%!important;
	float: left;
}
.register_half label:first-child{
	margin-right: 2%;
}

.register_half label span.labelinlabel,
.register_half input{
display: inline-block;
}
.register_half input{
	width: 90%!important;
	margin-left: 2%;
}

.register_half.furigana_w input{
	width: 86%!important;
}


	/* 請求書 */
	#invoice{
		clear: both;
		overflow: hidden;
		max-width: 1200px;
		margin: 0 auto;
	}
	#invoice h1{
		text-align: center;
		letter-spacing: 15px;
	}
	#invoice .address{
		clear: both;
		overflow: hidden;
		max-width: 600px;
	}
	invoice .address table{
		float: left;
	}
	#invoice table th{
		padding: 0px 30px 0px 10px;
		text-align: left;
	}
	#invoice table td{
		margin: 5px 0;
	}
	#invoice .address table th{
		width: 70px;
	}
	#invoice .invoice_number{
		clear: both;
		overflow: hidden;
	}
	#invoice .invoice_number table{
		float: right;
	}
	#invoice .event_container{
		clear: both;
		overflow: hidden;
	}
	#invoice .event{
		float: left;
		border: 2px solid #000;
		max-width: 600px;
	}
	#invoice .event table{
		margin: 20px;
	}
	#invoice .nom_address{
		float: right;
	}
	#invoice .nom_address p{
		margin: 0;
	}
	#invoice .invoice_detail{
		clear: both;
		overflow: hidden;
		margin: 0 auto;
	}
	#invoice p.right{
		float: right;
	}
	#invoice p.bold{
		font-weight: bold;
	}
	#invoice p.underline{
		border-bottom: double;
	}
	#invoice .invoice_detail p.border{
		border: 1px solid #000;
		width: 300px;
		margin: 10px;
		padding: 10px;
	}
	#invoice .invoice_detail p span{
		font-size: 20px;
	}
	#invoice .invoice_detail table{
		width: 100%;
		margin: 30px auto;
		border-collapse: collapse;
		border: 2px solid;
	}
	#invoice .invoice_detail table th{
		text-align: center;
		border-top: 2px solid;
		border-bottom: 2px solid;
		border-right: 1px solid;
		border-left: 1px solid;
		padding: 0;
	}
	#invoice .invoice_detail table th:nth-child(1){
		width: 60%;
	}
	#invoice .invoice_detail table th:nth-child(2){
		width: 5%;
	}
	#invoice .invoice_detail table th:nth-child(3){
		width: 15%;
	}
	#invoice .invoice_detail table th:nth-child(4){
		width: 25%;
	}
	#invoice .invoice_detail table td:nth-child(1){
		padding-left: 30px;
	}
	#invoice .invoice_detail table td:nth-child(2){
		text-align: center;
	}
	#invoice .invoice_detail table td:nth-child(3){
		text-align: right;
	}
	#invoice .invoice_detail table td:nth-child(4){
		text-align: right;
	}
	#invoice .invoice_detail table td:last-child{
		text-align: right;
	}
	#invoice .invoice_detail table tr.overline{
		border-top: 2px solid;
	}
	#invoice .invoice_detail table td{
		border-collapse: collapse;
		border: 1px solid;
	}
	#invoice .invoice_detail table td.right{
		text-align: right;
		padding-right: 30px;
	}
	#invoice .about_transfer p{
		margin: 0;
	}
	#invoice .about_transfer .red{
		color: red;
	}
	#invoice .about_transfer h5{
	    font-size: 16px;
	    margin: 5px 0;
	}
	#invoice .about_transfer h4{
		text-align: center;
	}


	/* 見積もり書 */
	#receipt{
		clear: both;
		overflow: hidden;
		max-width: 1200px;
		margin: 0 auto;
	}
	#receipt h1{
		text-align: center;
		letter-spacing: 15px;
		color: #FFFFFF;
		background: #000;
		font-weight: normal;
	}
	#receipt h2{
		font-size: 18px;
		font-weight: normal;
		text-decoration: underline;
	}
	#receipt p.right{
		text-align: right;
	}
	#receipt .event_container{
		clear: both;
		overflow: hidden;
	}
	#receipt .event{
		border: 2px solid #000;
		max-width: 600px;
		margin-bottom:50px;
	}
	#receipt .event table{
		margin: 20px;
	}
	#receipt .nom_address{
		float: right;
	}
	#receipt .nom_address p{
		margin: 0;
	}
	#receipt p.underline{
		border-bottom: 1px solid;
		max-width: 600px;
	}
	#receipt p.bold{
		font-weight: bold;
	}
	#receipt p.mgn50{
		margin: 50px 0;
	}
	#receipt p span{
		font-size: 20px;
	}
	#receipt .receipt_detail table{
		width: 100%;
		margin: 30px auto;
		border-collapse: collapse;
		border: 2px solid;
	}
	#receipt .receipt_detail table th{
		text-align: center;
		border-top: 2px solid;
		border-bottom: 2px solid;
		border-right: 1px solid;
		border-left: 1px solid;
		padding: 0;
		color: #000;
		background: rgba(0, 0, 0, 0.3);
	}
	#receipt .receipt_detail table th:nth-child(1){
		width: 60%;
	}
	#receipt .receipt_detail table th:nth-child(2){
		width: 5%;
	}
	#receipt .receipt_detail table th:nth-child(3){
		width: 15%;
	}
	#receipt .receipt_detail table th:nth-child(4){
		width: 25%;
	}
	#receipt .receipt_detail table td:nth-child(1){
		padding-left: 30px;
	}
	#receipt .receipt_detail table td:nth-child(2){
		text-align: center;
	}
	#receipt .receipt_detail table td:nth-child(3){
		text-align: right;
	}
	#receipt .receipt_detail table td:nth-child(4){
		text-align: right;
	}
	#receipt .receipt_detail table td:last-child{
		text-align: right;
	}
	#receipt .receipt_detail table tr.overline{
		border-top: 2px solid;
	}
	#receipt .receipt_detail table td{
		border-collapse: collapse;
		border: 1px solid;
	}
	#receipt .receipt_detail table td.right{
		text-align: right;
		padding-right: 30px;
	}

	.agree_check_wrap{
		text-align: center;
		margin-bottom: 40px;
        font-weight: 700;
	}

	.agree_check_wrap .checkbox:before{
		border: 2px solid #777;
		box-shadow: 0 0 5px #ededed;
	}
	.agree_check_wrap .checkbox:checked:before{
		-webkit-transform: translate(0, -50%)rotate(-45deg);
    -moz-transform: translate(0, -50%)rotate(-45deg);
    -ms-transform: translate(0, -50%)rotate(-45deg);
    -o-transform: translate(0, -50%)rotate(-45deg);
    transform: translate(0, -50%)rotate(-45deg);
    height: .5rem;
    border-color: #F6891E;
    border-top-style: none;
    border-right-style: none;
    top: 30%;
	}

@media only screen and (max-width:736px){
	.agree_check_wrap{
		margin-bottom: 20px;
	}
	.agree_check{
		font-size: 13px;
		padding-left: 10px;
	}
}



span.error_t{
	font-size: 12px;
	color: rgb(255, 0, 0);
	display: block;
	margin-top: 5px;
}
span.error_t a{
	color: rgb(255, 0, 0);
	text-decoration: underline;
}





.header h1 .logo{
	background: url(../img/conf_pdf_logo.png) no-repeat;
	width: 200px;
	height: 40px;
	background-size: 200px;
	display: inline-block;
	vertical-align: middle;
}


.after_can{
	margin-top: 10px;
	line-height: 1.4!important;
	font-size: 12px;
	margin-left: 10px;
}
.after_can.block{
	display: block;
}

.aws_banner{
	display: inline-block;
	margin-top: 30px;
	text-align: center;
}
.aws_banner p{
	font-size: 14px;
	font-weight: bold;
	/* padding-left: 10px; */
}
.aws_banner a:hover{
	opacity: 0.7;
	transition: all 0.3s ease-in-out;
}
.aws_banner img{
	width: 200px;
}


.other_contents {
	background: #F2F2F2;
	padding: 50px 0;
	/* position: relative;
	z-index: 12; */
	margin-bottom: 80px;
}

.other_contents ul li {
	padding: 0 10px;
}
.other_contents ul li img{
	width: 100%;
}
.other_contents h3 {
	position: relative;
	text-align: center;
	font-weight: bold;
}
.other_contents h3 span {
	font-size: 16px;
	text-align: center;
	position: relative;
	z-index: 2;
	padding: 0 15px;
	text-align: center;
}
.other_contents h3 span::before {
	position: absolute;
	content: "";
	background: #F7F7F7;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}
.other_contents h3::after {
	text-align: center;
	width: 213px;
	background: #6D6E71;
	height: 1px;
	content: "";
	position: absolute;
	top: 50%;
	/* transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%); */
	left: 0;
	right: 0;
	margin: auto;
	z-index: 1;
}
.other_contents ul {
	max-width: 1200px;
	margin: 30px auto 0 auto;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
}
 @media only screen and (max-width:736px) {
.other_contents ul {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	/*Android4.3*/
	-moz-box-pack: justify;
	/*Firefox21*/
	-ms-flex-pack: justify;
	/*IE10*/
	-webkit-justify-content: space-between;
	/*PC-Safari,iOS8.4*/
	justify-content: space-between;
	padding: 0 15px;
}
.other_contents ul li {
	width: 48.5%;
	padding: 0;
	margin-bottom: 5px;
}
}

.session_notice{
	width: 100%;
	margin: 10px 0;
}
.session_notice p{
	font-size: 13px;
	margin-bottom: 10px;
	font-weight: normal;
}



.guide_popup{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: rgba(255, 255, 255, .7);
	/* background: #000; */
	display: inline-block;
	width: auto;
	padding: 10px;
	/* max-width: 650px; */
	text-align: center;
	box-shadow: 0 0 30px #888;
}

.guide_popup p{
	font-size: 13px;
	font-weight: normal;
	display: inline-block;
	/* color: #fff; */
}


@media only screen and (max-width:736px){
	.guide_popup{
		padding: 10px;
	}
	.guide_popup p{
		font-size: 10px;
	}

}

.session-document-header{
	display: grid;
	grid-template-columns: 1fr 55px;
}
.session-document-header-link{
	align-self: center;
	justify-self: center;
}
.session-document-header-link .download-ok{
	display: block;
	width: 5%;
	padding: 10px 0 0 0;
	text-align: center;
}

.session-document-header-link .download-ok img{
	width: 30px;
}

.error-page{
	width: 800px;
}
.error-page h1{
	font-size: xx-large;
}
.error-page .detail-message{
	margin: 50px 0;
	text-align: justify;
}
.error-page h3{
	-webkit-font-smoothing: subpixel-antialiased;
	clear: both;
	color: #181528;
	line-height: 1.5;
	margin: 0;
	padding: 0;
}
.error-page h3 a{
	-webkit-font-smoothing: subpixel-antialiased;
	color: #a08600;
	cursor: pointer;
	text-decoration: none;
	transition-delay: 0s;
	transition-duration: .3s;
	transition-property: all;
	transition-timing-function: ease-out;
	font-size: x-large;
}

.end_flag p{
	position: relative;
	top: 0;
	left: -5px;
	right: 0;
	color: #fff;
	z-index: 2;
	font-size: 12px;
}
.end_flag{
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
.end_flag::before{
content: "";
position: absolute;
top: -20px;
left: -20px;
width: 0;
height: 0;
border-style: solid;
border-width: 100px 100px 0 0;
border-color: #58595B transparent transparent transparent;
z-index: -1;
}





/* 2019 秋イベント時追加 */
.steps_wrap{
	margin-bottom: 45px;
}
.steps_wrap ul{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-pack: justify;
	/*Android4.3*/
	-moz-box-pack: justify;
	/*Firefox21*/
	-ms-flex-pack: justify;
	/*IE10*/
	-webkit-justify-content: space-between;
	/*PC-Safari,iOS8.4*/
	justify-content: space-between;
	text-align: center;
}

.steps_wrap ul li{
	background: #ddd;
	padding: 10px;
	font-size: 14px;
	position: relative;
	font-weight: bold;
    flex: 1;
    margin-right: 5px;
}
.steps_wrap ul li.current{
	background: #000;
	color: #fff;
}
.steps_wrap ul li::before{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width:  20px 0 20px 15px;
	border-color: transparent transparent transparent #F7F7F7;
	position: absolute;
	left: 0;
	top: 0;
}
.steps_wrap ul li::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width:  20px 0 20px 15px;
	border-color: transparent transparent transparent #ddd;
	position: absolute;
	right: -15px;
	top: 0;
	z-index: 2;
}
.steps_wrap ul li.current::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width:  20px 0 20px 15px;
	border-color: transparent transparent transparent #000;
	position: absolute;
	right: -15px;
	top: 0;
	z-index: 2;
}

.steps_wrap ul li:first-child::before,
.steps_wrap ul li:last-child::after{
	display: none;
}


.gold{
	background: #FFD700!important;
}
.aqua{
	background: #00ffff!important;
	color: #000!important;
}
.crimson{
	background: #dc143c!important;
    color: #fff!important;
}
.darkorange{
	background: #ff8c00!important;
}
.darkviolet{
	background: #9400d3!important;
    color: #fff!important;
}
.dodgerblue{
	background: #1e90ff!important;
    color: #fff!important;
}
.hotpink{
	background: #ff69b4!important;
    color: #fff!important;
}
.mediumblue{
	background: #0000cd!important;
    color: #fff!important;
}
.orangered{
	background: #ff4500!important;
    color: #fff!important;
}
.yellow{
	background: #d4e133!important;
}
.black{
	background: #000!important;
	color: #fff!important;
}
.dimgray{
	background: #696969!important;
	color: #fff!important;
}
.lightsteelblue{
	background: #b0c4de!important;
}
.teal{
	background: #008080!important;
	color: #fff!important;
}
.paleturquoise{
	background: #AFEEEE!important;
}
.palegoldenrod{
	background: #EEE8AA!important;
}
.mediumpurple{
	background: #9370db!important;
	color: #fff!important;
}
.violet{
	background: #EE82EE!important;
	color: #fff!important;
}
.salmon{
	background: #FA8072!important;
	color: #fff!important;
}
.lime{
    background: lime!important;
}



@media only screen and (max-width:736px){
	.steps_wrap ul li{
		font-size: 10px;
		padding: 5px;
		position: relative;
		height: 40px;
		line-height: 1.3;
	}
	.steps_wrap ul li span{
		position: absolute;
		left: 0;
		right: 0;
		top: 50%;
		transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-webkit-transform: translate(0, -50%);
		margin: auto;
	}
}


.active_event_name{
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 16px;
}

.enter_check{
	position: absolute;
	top: 0;
	right: 0;
	border: 2px solid rgb(187, 0, 0);
	padding-left: 15px;
}

.enter_check label{
	font-size: 16px;
	color: rgb(187, 0, 0);
	font-weight: bold;
	/* text-decoration: underline; */
	/* background: rgba(255, 245, 0, 0.5); */
}

.timetable{
	position: relative;
}


@media only screen and (max-width:736px){
	.enter_check{
		position: relative;
		top: inherit;
		right: inherit;
		margin-bottom: 10px;
	}
}

.keywords{
	margin-top: 10px;
}
.keywords ul{
	display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
	-webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.keywords ul li{
	font-size: 13px;
	border: 1px solid #bcbec0;
	padding: 2px 5px;
	margin: 0 5px;
	margin-bottom: 10px;
}

.session_detail_body_content .speaker_list_wrap{
	border-top: 1px solid #F1F2F2;
}
.session_detail_body .session_titile_area h3{
	position: relative;
}
.session_detail_body_content .category_label{
	margin-left: auto;
	font-size: 16px;
	border: 1px solid #d1d3d4;
	padding: 5px 10px;
	display: inline-block;
}

.notice_sponsor{
	font-size: 13px;
	line-height: 1.4;
	margin-bottom: 10px;
}


.no_slider{
	margin: 20px auto;
	text-align: center;
}

@media only screen and (max-width:736px){
.no_slider img{
	width: 100%;
}
}







/*ログイン画面 修正*/
.login_page,
.login_page a:hover{
  color: #FFFFFF;
}

#wrapper.login_page{
  padding-top: 0;
}

.login_page h1{
  font-size: 20px;
  margin-bottom: 15px;
  text-align: center;
  font-weight: bold;
  background-color: #262626;
  padding: 10px;
  box-shadow: 50vw 0 #262626, -50vw 0 #262626;
}

.login_page h2#logo {
	text-align: center;
	width: 150px;
	margin: 25px auto;
}
.login_page h2#logo img {
	max-width: 100%;
}

.login_page h3{
  font-size: 18px;
  text-align: center;
  font-weight: bold;
  margin: 30px 0 15px;
}
.login_page > p{
  font-size: 16px;
  margin: 0 0 15px 0;
}

.login_page p{
  font-weight: normal;
}
.login_page .flex_area{
  margin-bottom: 30px;
}
.login_page .dxexpo-caption {
	background: #767171;
	font-weight: 500;
	margin-top: 0;
	padding: .2em 1em;
	text-align: center;
}
.login_page .dxexpo-caption > span{
	font-size: .8em;
}
.btn_login_first,
.btn_login_already{
  display: block;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  padding: 5px 0;
  box-sizing: border-box;
}
.btn_login_first,
.login_title_sub{
  background-color: #C00000;
}
.btn_login_already,
#login_area .login_title_sub{
  background-color: #1F4E79;
}
.btn_login_first span,
.btn_login_already span,
.login_title_sub span{
  font-size: 13px;
  display: block;
  font-weight: normal;
}

.login_title_sub{
  text-align: center;
  margin: -15px -15px 15px;
  padding: 10px 0;
  font-size: 17px;
  font-weight: bold;
}


.login_page .flex_area form{
  background: #111;
  box-sizing: border-box;
  padding: 15px;
  font-size: 14px;
}

.login_page .flex_area .login.btn.btn-primary{
  padding: 15px;
  margin-left: auto;
  margin-right: auto;
}

.login_page .flex_area form .txt_em{
  font-size: 18px;
  letter-spacing: -.05em;
  font-weight: bold;
  text-align: center;
  margin-bottom: 15px;
}
.login_page .flex_area form .project_name{
  border: 1px solid #FFFFFF;
  padding: 10px;
  margin-top: 10px;
}

.login_txt_bold{
  font-weight: bold;
}


.login_renewal{
  margin-top: 50px;
  background-color: #767171;
  padding: 0 15px 20px;
  overflow: hidden;
  text-align: center;
}
.recommended_browser{
  margin: 50px 0;
  background: #111;
  padding: 15px;
}

.login_page #login_area .login.btn.btn-primary{
  background:linear-gradient(rgb(31, 78, 121), rgb(9, 36, 84));
}

.login_page .invalid-feedback strong{
  font-weight: bold;
  margin-top: 2px;
}

.login_page .caution p{
    font-size: 14px;
}
.login_page hr.project{
    border: 1px solid #C00000;
    background-color: #C00000;
}
.login_page p.project{
    font-weight: 800;
}

@media only screen and (max-width:736px){
  .login_page{
    line-height: 1.4;
  }
  .login_page p{
    font-size: 14px;
  }
  .login_page p.project{
    font-size: 16px;
  }


  .login_page .invalid-feedback strong{
    margin: 5px 0 3px;
    font-size: 12px;
    line-height: 1.2;
  }


  .login_page .flex_area > *:not(:last-child){
    margin-bottom: 15px;
  }

  #new_registration{
    margin-bottom: 30px;
  }

  .login_page h2#logo {
    width: 120px;
    margin: 40px auto 5px auto;
  }
  .login_page .flex_area > *{
    max-width: 500px;
    margin: 0 auto;
  }

  .btn_login_first span,
  .btn_login_already span,
  .login_title_sub span{
    font-size: 11px;
  }
}

@media only screen and (min-width:735px){
  .login_page > p{
    font-size: 20px;
  }

  .login_page .flex_area{
    display: flex;
    justify-content: center;
    margin-bottom: 15px;
  }
  .login_page .flex_area > *{
    width: 49%;
    max-width: 49%;
    flex: 0 0 49%;
    margin: 0;
  }
  .login_page .flex_area > *:not(:last-child){
    margin-right: auto
  }
  _:-ms-fullscreen, :root .login_page .flex_area > *:not(:last-child) {
    margin-right: 2%
  }

  .login_page .flex_area form{
    padding: 2%;
  }

  .btn_login_first,
  .btn_login_already{
    pointer-events: none;
    font-size: 22px;
  }

  .login_page .flex_area form{
    display: flex;
    flex-direction: column;
  }

  .login_title_sub{
/*    display: none;*/
  }

  .login_page .flex_area p.dontknow{
    margin-bottom: 20px;
  }
  .login_page .flex_area .login.btn.btn-primary{
    width: 260px;
    margin-top: auto;
  }

  .login_page h3{
    font-size: 22px;
  }
}
@media only screen and (min-width:980px){
  .login_page .flex_area > *{
    width: 48%;
    flex: 0 0 48%;
    margin: 0;
  }
  .login_page .flex_area form{
    padding: 5%;
  }
}








/*フォーム調整　ログイン画面用も追加*/
.input_pbt{
    margin: 20px auto;
    width: 736px;
}
.input_pbt input[type="text"],
.input_pbt input[type="number"],
.input_pbt input[type="tel"],
.input_pbt input[type="email"],
.input_pbt input[type="url"],
.input_pbt input[type="password"],
.input_pbt textarea{
  padding: 7px 10px;
}

.input_pbt input[type="number"]::-webkit-outer-spin-button,
.input_pbt input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.input_pbt input[type="number"] {
  -moz-appearance:textfield;
}

.form_required input, input.form_required, .form_required textarea, .form_required .select_wrap{
  background-color: #FFFDDC;
}

.form_error input, input.form_error, .form_error textarea, .form_error .select_wrap, .form_error .radiobtn-wrap label:before{
    background-color: #FFB3B5;
}
.form_error.is_ok input, input.form_error.is_ok, .form_error.is_ok textarea, .form_error.is_ok .select_wrap, .form_error.is_ok .radiobtn-wrap label:before{
    background-color: #ffffff;
}


.form_required .select_wrap,
.form_error .select_wrap{
    border-radius: 10px;
    display: block;
}

.form_required .select_wrap::after,
.form_error .select_wrap::after{
    top: 49%;
}

.input_pbt .register_form .basic-box .form_auto{
  width: auto;
}

.input_pbt .labelinlabel{
  width: 2.6em;
  padding-right: .5em;
  box-sizing: border-box;
  text-align: right;
}

.input_pbt .register_half input{
  margin-right: 0;
  width: calc(100% - 2.6em) !important;
  box-sizing: border-box;
}

.input_pbt textarea{
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #CCC;
  border-radius: 5px;
  box-sizing: border-box;
}
.input_pbt textarea::placeholder {
    font-weight: normal;
}
.agree_check_wrap .mk_required{
  margin-right: 5px;
}

@media only screen and (max-width:736px){
    .input_pbt{
        line-height: 1.4;
        width: auto;
    }
  .input_pbt input[type="text"],
  .input_pbt input[type="number"],
  .input_pbt input[type="tel"],
  .input_pbt input[type="email"],
  .input_pbt input[type="url"],
  .input_pbt input[type="password"],
  .input_pbt textarea{
    padding: 8px;
  }

  .input_pbt .agree_check_wrap .checkbox:before{
    margin-top: -4px;
  }
  .input_pbt .agree_check_wrap .checkbox:after{
    margin-top: -10px;
  }
}
@media only screen and (min-width:380px){
  .input_pbt .register_form .basic-box .form_s{
    min-width: 200px;
    width: 40%;
    max-width: 240px;
    display: block;
  }
  .input_pbt .register_form .basic-box .form_m{
    min-width: 300px;
    width: 70%;
    max-width: 360px;
    display: block;
  }
}
@media only screen and (min-width:735px){
  .agree_check_wrap .mk_required{
    margin-right: 10px;
    vertical-align: 2px;
  }
}

/*注釈Comment・ボタン色変更*/
.annotation_notes{
  display: block;
  width: 100%;
  font-size: 13px;
  color: #2f5597;
  margin-bottom: 10px;
}

button.btn.btn-primary.btn_dark{
  background: linear-gradient(rgb(90, 90, 90), rgb(0, 0, 0));
}




/*完了画面 他イベントバナー*/
.thanks_banner li a{
  width: 100%;
}
.thanks_banner li a img{
  width: 100%;
}
.thanks_banner li {
  padding: 0 15px;
}
.thanks_banner li img:hover{
    opacity: 0.5;
}

@media only screen and (max-width: 736px){
.thanks_banner li {
  padding: 0 5px;
}

.thanks_banner .slide-arrow.prev-arrow,
.thanks_banner .slide-arrow.next-arrow {
    position: absolute;
    background: rgba(0, 0, 0, 0.8);
    width: 36px;
    height: 36px;
    line-height: 45px;
    text-align: center;
    padding: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
  }
  .thanks_banner .slide-arrow.prev-arrow{
    left: 0;
  }
  .thanks_banner .slide-arrow.next-arrow {
    right: 0;
  }

  .thanks_banner .slide-arrow.prev-arrow img,
  .thanks_banner .slide-arrow.next-arrow img{
    height: 70%;
  }
}






/*スライダーバナー　不具合対応*/
.slider_renew{
  width: 100%;
  display: block !important;
}

.interop{
	background: #002F48!important;
    color: #fff!important;
}
.cmt{
	background: #009FB9!important;
    color: #fff!important;
}
.dsj{
	background: #D01126!important;
    color: #fff!important;
}
.lbj{
	background: #006EB0!important;
    color: #fff!important;
}
.apps{
	background: #A660A3!important;
    color: #fff!important;
}
.vaiex{
    background: #009EC0!important;
    color: #fff!important;
}

.redirect_to{
    display: grid;
    align-content: center;
    justify-content: center;
    justify-items: stretch;
    grid-template-columns: repeat(auto-fit, 300px);
    grid-gap: 1rem;
    margin: 0.5rem 0;
    padding: 0.5rem;
    font-weight: 800;
}
.redirect_to.fix2{
    grid-template-columns: repeat(auto-fit, 300px);
}
.redirect_to a{
    text-align: center;
    width: 100%;
    font-size: 0.75rem;
}
@media only screen and (max-width: 736px) {
    .redirect_to{
        display: grid;
        grid-template-columns: 1fr;
        padding: 0;
        font-size: 13px;
    }
    .redirect_to.fix2{
        grid-template-columns: 1fr;
    }
    .redirect_to a{
        text-align: center;
    }
}
.redirect_to a:after{
    position:absolute;
    right:1rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/right_arrow.svg) 0 50%/20px no-repeat;
    background-size:contain;
}
.redirect_to a:hover{
    color: #ffffff!important;
    opacity: 0.5;
}
.redirect_to .video_session{
    background-color: coral;
    color: #ffffff;
    border-radius: 0.25rem;
    position:relative;
    line-height:1.5rem;
    padding:1rem 2.75rem;
}
.redirect_to .video_session:before{
    position:absolute;
    left:1rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/video_icon.svg) 0 50%/20px no-repeat;
    background-size:contain;
}
.redirect_to .my_page{
    background-color: #589bcc;
    color: #ffffff;
    border-radius: 0.25rem;
    position:relative;
    line-height:1.5rem;
    padding:1rem 2.75rem;
}
.redirect_to .my_page:before{
    position:absolute;
    left:1rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/my_page_icon.svg) 0 50%/20px no-repeat;
    background-size:contain;
}
.redirect_to .et_iot{
    background-color: #00A0E9;
    color: #ffffff;
    border-radius: 0.25rem;
    position:relative;
    line-height:1.5rem;
    padding:1rem 2.75rem;
}
.redirect_to .et_iot:before{
    position:absolute;
    left:1rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/my_page_icon.svg) 0 50%/20px no-repeat;
    background-size:contain;
}
.redirect_to .entrance{
    background-color: #00a0e9;
    color: #ffffff;
    border-radius: 0.25rem;
    position:relative;
    line-height:1.5rem;
    padding:1rem 2.75rem;
}
.redirect_to .entrance:before{
    position:absolute;
    left:1rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/entrance.svg) 0 50%/20px no-repeat #00a0e9;
    background-size:contain;
}

.redirect_to .printing{
    background-color: #F6891E;
    color: #ffffff;
    border-radius: 0.25rem;
    position:relative;
    line-height:1.5rem;
    padding:1rem 2.75rem;
}
.redirect_to .printing:before{
    position:absolute;
    left:1rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/printer.svg) 0 50%/20px no-repeat #F6891E;
    background-size:contain;
}

.redirect_to .download{
    background-color: #F6891E;
    color: #ffffff;
    border-radius: 0.25rem;
    position:relative;
    line-height:1.5rem;
    padding:1rem 2.75rem;
}
.redirect_to .download:before{
    position:absolute;
    left:1rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/icon-download.png) 0 50%/20px no-repeat #F6891E;
    background-size:contain;
}
.links{
    display: grid;
    grid-template-columns: auto 150px;
    justify-content: start;
    align-items: start;
    grid-gap: 1rem;
}
.links a:hover{
    opacity: 0.5;
}

.official_site{
    display: grid;
    justify-content: start;
    align-items: stretch;
    justify-items: stretch;
    grid-gap: 0.5rem;
}
.official_site a{
    width: 100%;
    background: #d7d7d7;
    border-radius: 0.25rem;
    box-shadow: 5px 5px 10px -5px rgba(0,0,0,0.6);
    font-weight: 800;
    position:relative;
    padding:0.5rem 2.75rem 0.5rem 1rem;

}
.official_site a:after{
    position:absolute;
    right:0.5rem;
    content:"";
    display:inline-block;
    width:1.5rem;
    height:1.5rem;
    background: url(/img/right_arrow_black.svg) 0 50%/20px no-repeat;
    background-size:contain;
}

.sns{
    display: grid;
    grid-template-columns: repeat(3,auto);
    justify-content: center;
    align-items: center;
    grid-gap: 0.5rem;
}
.sns a img{
    width: 40px;
}
.sns a img.x-logo{
    width: 32px;
}

@media only screen and (max-width: 736px) {
    .links {
        grid-template-columns: 1fr;
    }
    .official_site{
        grid-template-columns: 1fr;
    }
    .official_site a {
        font-size: 0.75rem;
        text-align: center;
    }
    .official_site a:after{
        top: 1rem
    }
}
/* アンケート */
.question-note{
    display: block;
    font-weight: normal;
}
