/**************************/
/*     General Styles     */
/**************************/
body,
html {
	width: 100%;
	height: 100%;
	color: #191e47;
	font-family: "Noto Sans JP", sans-serif;
}

h1 {
	font-weight: 700;
	font-size: 2.5rem;
	line-height: 3.25rem;
	letter-spacing: -0.4px;
}

h2 {
	font-weight: 700;
	font-size: 2rem;
	line-height: 2.5rem;
	letter-spacing: -0.2px;
}

h3 {
	font-weight: 700;
	font-size: 1.75rem;
	line-height: 2.25rem;
	letter-spacing: -0.2px;
}

h4 {
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 2rem;
}

h5 {
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.625rem;
}

h6 {
	font-weight: 700;
	font-size: 1rem;
	line-height: 1.375rem;
}

.p-small {
	font-size: 0.875rem;
	line-height: 1.5rem;
}

/**************************/
/*    Background Color    */
/**************************/
/*  */
.bg-gray {
	background-color: #f9fafe;
}

.bg-white {
	background-color: #fff;
}

/**************************/
/*         NavBar         */
/**************************/
.navbar .logo-image img {
	width: 130px;
	height: 40px;
}

/**************************/
/*         Header         */
/**************************/
.header {
	width: 100%;
	height: 100vh;
	position: relative;
	overflow: hidden;
	background: url(../img/header_bg.png) top center no-repeat;
	background-size: cover;
	text-align: center;
}

.header-img {
	max-width: 100%;
}

a.top-btn {
	display: inline-block;
	padding: 16px 24px;
	border: 1px solid #4555d2;
	border-radius: 50px;
	font-size: 14px;
	font-weight: 600;
	line-height: 0;
	text-decoration: none;
	font-family: 'Zen Antique', serif;
	transition: .2s ease-out;
}

a#btn-solid-lg {
	background-color: #4555d2;
	color: #ffffff;
	letter-spacing: 1.5px;
}

a#btn-solid-lg:hover {
	background-color: transparent;
	border: 1px solid #cc2973;
	color: #cc2973;
}

a#btn-solid-lg2 {
	background-color: transparent;
	color: #4555d2;
}

a#btn-solid-lg2:hover {
	background-color: #cc2973;
	border: 1px solid #cc2973;
	color: #fff;
}

span.btn2-img-wrapper, span.btn1-img-wrapper {
	position: relative;
}

img#btn2-img1, img#btn1-img1 {
	opacity: 1;
}

img#btn2-img2, img#btn1-img2 {
	position: absolute;
	top: 2.7px;
	bottom: 0;
	left: 0;
	right: 0;
	opacity: 0;
}

a#btn-solid-lg {
	margin-top: 2.8rem;
	margin-right: 0.25rem;
}

a.register {
	border-radius: 30px;
	color: #fff;

	font-weight: 600;
	letter-spacing: 1.1px;
}

a.register:hover {
	color: #fff;
}

/* a#btn-solid-lg3 {
	margin-top: 2.8rem;
    margin-right: 0.25rem;
	background-color: #4555d2;
}

a#btn-solid-lg3:hover {
	background-color: #cc2973 !important;
	border: 1px solid #cc2973 !important;
}

a.btn-solid-lg-text {
    color: #4555d2;
    text-decoration: none;
	font-size: 18px;

}

a.btn-solid-lg-text:hover {
    color: #cc2973 !important;
	text-decoration: underline dotted !important;
} */

/**************************/
/*         About          */
/**************************/
#about p {
	margin-bottom: 30px;
	color: #191e47;
	line-height: 25px;
}

#about img {
	max-width: 90%;
}

.underline {
	margin-bottom: 10px;
	border-bottom: dashed 2px #E1EFFA;
}

.fa-square {
	padding-bottom: 5px;
	color: #cc2973;
	font-size: 0.375rem;
	line-height: 1.625rem;
}

/**************************/
/*         Program        */
/**************************/
.program-title {
	margin-left: 8px;
	margin-bottom: 0;
	color: #191e47;
	font-size: 16px;
	font-weight: bold;
}

.program-name {
	margin: 0;
	color: #191e47;
	font-size: 16px;
}

.pn-add-margin {
	margin-bottom: 12px !important;
}

.program-subject {
	margin-bottom: 5px;
	color: #191e47;
	font-size: 17px;
	font-weight: bold;
}

.time-icon {
	margin-bottom: 3px;
}

.program-line {
	margin: 0 0 30px 0;
	border-top: 2px dashed #E1EFFA;
}

.rice {
	color: #cc2973;
	font-size: 20px;
}

.rest {
	display: flex;
	align-items: center;
	justify-content: start;
	font-weight: normal;
}

.rest:before, .rest:after {
	border-top: 1px solid;
	content: "";
	width: 2em;
}

.rest:before {
	margin-right: 1em;
}

.rest:after {
	margin-left: 1em;
}

p.time {
	margin: 0;
	font-size: 12px;
	color: rgba(25, 30, 71, 0.7);
}

span.time-text {
	padding-left: 3px;
}

.small-enclosure {
	padding: 2px 4px;
	border-radius: 5px;
	box-shadow: 0 0 3px #ddd;
	background-color: #fff;
	font-size: 12px;
	font-family: Open Sans, sans-serif;
}

.host {
	border: 1.7px solid #4555d2;
	color: #4555d2;
}

.panelist {
	border: 1.7px solid #cc2973;
	color: #cc2973;
}

/**************************/
/*      Registration      */
/**************************/
#registration {
	color: #191e47;
	background-color: #f9fafe;
}

#registration .registration-box {
	padding: 40px 30px 40px 30px;
	height: 100%;
	border-radius: 0.5em;
	box-shadow: 0 7px 14px 0 rgba(65, 69, 88, 0.1), 0 3px 6px 0 rgba(0, 0, 0, 0.07);
	text-align: center;
	transition: 0.3s;
}

#registration .attention-text {
	margin-bottom: 24px;
	color: #616368;
	font-size: 18px;
	font-weight: normal;
}

.registration-subject {
	padding: 0.5em;
	border: solid 3px #2d4796;
	border-radius: 0.5em;
	color: #2d4796;
}

.check-icon {
	color: #cc2973;
}

.registration-detail {
	font-weight: 600;
}

.registration-line {
	margin: 15px 0;
	border-top: 2px dashed #E1EFFA;
}

.registration-postscript {
	margin-bottom: 5px !important;
	font-size: 14px;
}

.venue-button {
	padding: 10px 40px;
	border-radius: 50px;
	vertical-align: middle;
	text-decoration: none;
	color: #fff;
	background-color: #4555d2;
	font-size: 16px;
	letter-spacing: 1.1px;
}

.venue-button:hover {
	color: #fff;
	opacity: .8;
}

.induction {
	margin-bottom: 10px !important;
	text-align: center;
	color: #616368;
}

.personal-information {
	margin-top: 10px;
}

.notice-of-termination {
	justify-content: center;
	color: #e60012 !important;
	font-weight: 600 !important;
}

/**************************/
/*     Meeting place      */
/**************************/
iframe {
	width: 100%;
	aspect-ratio: 16/9;
}

p.address::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	content: "\f3c5";
}

/**************************/
/*        Contact         */
/**************************/
#contact {
	background: #f9fafe;
}

#contact p.company-name {
	font-size: 18px;
	color: #fff;
}

#contact p.company-name2 {
	font-size: 18px;
	margin-bottom: 15px;
}

.contact-box {
	background-color: #003e7d;
	color: #fff;
}

.contact-detail {
	padding-top: 5px;
	font-size: 20px;
	font-weight: 600;
}

.contact-content {
	font-size: 14px;
}

.contact-box a {
	color: #cce7ff;
	transition: 0.1s ease;
}

.contact-box a:hover {
	opacity: .8;
}

.adjust-width {
	display: none;
}

div.address-box {
	margin-left: 10px;
}

br.con-d2 {
	display: none;
}

/**************************/
/*       Organizer        */
/**************************/
#organizer {
	border-bottom: 2px dashed #E1EFFA;
}

#organizer p {
	color: #191e47;
}

/******************/
/*     Footer     */
/******************/
.footer {
	padding: 50px 0 50px;
}

.footer a {
	opacity: 0.9;
	color: #616368;
	text-decoration: none;
}

.footer a:hover {
	color: #4555d2;
	text-decoration: underline solid;
}

.footer h4 {
	margin-bottom: 0.625rem;
	opacity: 0.9;
	color: #616368;
}

/*********************/
/*     Copyright     */
/*********************/
.copyright {
	padding: 20px 0 20px;
	opacity: 0.9;
	border-top: 2px dashed #E1EFFA;
	color: #191e47;
	text-align: center;
}

.deco-title, .deco-title2 {
	position: relative;
	font-size: 1.5rem;
	display: inline-block;


	border-radius: 30px;
	display: inline-block;
	position: relative;
	z-index: 2;
	margin-bottom: 0;
	padding: 10px 25px;
}

.deco-title:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 105%;
	background-color: rgba(239, 239, 254, 0.7);
	z-index: -1;
	/* height:30%;
 	border-radius:45px; */
	height: 50%;
	border-radius: 0.75rem;
	-webkit-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
	display: block;
}

.deco-title2:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 105%;
	background-color: rgba(225, 239, 250, 0.7);
	z-index: -1;
	height: 50%;
	border-radius: 0.75rem;
	-webkit-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
	display: block;
}