.p-intro{
	padding:100px 0;
	margin-inline:auto;
	text-align:center;
}
.p-intro__text{
	border:21px solid var(--beige);
	padding:80px;
}
.p-intro__text h3{
	font-family:var(--serif);
	color:var(--brown);
	margin-bottom:80px;
	font-size:2.4rem;
	font-weight:normal;
	letter-spacing:.1em;
}
.p-intro__text p{
	font-family:var(--serif);
	font-size:1.6rem;
	line-height:1.8em;
	text-align:left;
}
.p-intro__text p.name{
	text-align:right;
	margin-top:50px;
}
@media only screen and (max-width: 767px){
	.p-intro{
		padding:38px 0;
	}
	.p-intro__text{
		padding:40px 15px;
		border:11px solid var(--beige);
	}
	.p-intro__text h3{
		margin-bottom:38px;
		font-size:2rem;
	}
	.p-intro__text p{
		font-size:1.2rem;
	}
	.p-intro__text p.name{
		font-size:1.3rem;
		margin-top:30px;
	}
}

.p-eventinfo{
	background:var(--beige);
	padding:65px 0 100px;
}
.p-100th_header{
	text-align:center;
}
.p-100th_header .ttl_en{
	font-family:var(--serif);
	color:var(--brown);
	font-size:1rem;
	letter-spacing:.1em;
	margin-bottom:24px;
}
.p-100th_header h3{
	font-family:var(--serif);
	font-size:2.1rem;
	margin-bottom:24px;
	font-weight:normal;
}
.p-100th_header p{
	font-size:1.6rem;
}

@media only screen and (max-width: 767px){
	.p-eventinfo{
		padding:50px 0;
	}
	.p-100th_header h3{
		font-size:1.8rem;
		margin-bottom:24px;
	}
	.p-100th_header p.p-100th_eventexp{
		font-size:1.4rem;
		text-align:left;
	}
}


.eventinfo_box{
	position:relative;
	margin:70px auto 0;
	max-width:1012px;
	background:#fff;
	border-radius:16px 16px 16px 16px;
}
.event_mark{
	position:absolute;
	top:-30px;
	left:-15px;
	width:122px;
	height:122px;
}
.eventinfo_box h4{
	font-family:var(--serif);
	background:var(--navy);
	color:#fff;
	text-align:center;
	font-size:2.1rem;
	border-radius:16px 16px 0 0;
	padding:15px;
	font-weight:normal;
}
.eventinfo_wrap{
	display:flex;
	align-items: flex-start;
	gap:70px;
	padding:40px 40px 40px 80px;
}
.eventinfo_wrap img{
	max-width:320px;
	max-height:300px;
}
.eventinfo_wrap .eventinfo_txt h5{
	font-family:var(--serif);
	color:var(--darkbrown);
	font-size:1.7rem;
	margin-bottom:30px;
	font-weight:normal;
}
.eventinfo_wrap .eventinfo_txt p{
	font-size:1.6rem;
}
.eventinfo_wrap .eventinfo_txt p span{
	font-size:1.4rem;
}
.eventinfo_box .btnarea{
	text-align:center;
	width:100%;
	padding-bottom:40px;
}

@media only screen and (max-width: 767px){
	.event_mark{
		top:-20px;
		left:-12px;
		width:100px;
		height:100px;
	}
	.eventinfo_wrap img{
		max-width:100%;
	}
	.eventinfo_box h4{
		font-size:1.6rem;
		line-height:1.1em;
		padding-left:80px;
	}
	.eventinfo_wrap{
		display:flex;
		flex-direction:column-reverse;
		align-items: flex-start;
		gap:30px;
		padding:30px;
	}
	.eventinfo_wrap .eventinfo_txt h5{
		font-size:1.4rem;
		margin-bottom:28px;
	}
	.eventinfo_wrap .eventinfo_txt p{
		font-size:1.3rem;
	}
	.eventinfo_wrap .eventinfo_txt p span{
		font-size:1.1rem;
	}
}


.btn_orange {
	display:inline-block;
	background:#FFB62C;
	border-radius:3px;
	width: 340px;
	padding:15px 30px;
	text-align:center;
	color: var(--black);
	cursor:pointer;
	position: relative;
	text-decoration: none;
	border-bottom: 1px solid #154897;
}

.btn_orange::after{
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: 30px;
	width: 20px;
	height: 5px;
	border: none;
	border-right: 2px solid var(--black);
	border-bottom: 1px solid var(--black);
	transform: skew(45deg);
	transition: .3s;
}
.btn_orange:hover {
	background-color:rgba(155,149,138,0.3);
}
.btn_orange:hover::after{
	right: 20px;
	width: 30px;
}


.btn_orange2 {
	display:inline-block;
	background:#FFB62C;
	border-radius:3px;
	width: 340px;
	padding:15px 30px;
	text-align:left;
	color: var(--black);
	cursor:pointer;
	position: relative;
	text-decoration: none;
	border-bottom: 1px solid #154897;
}

.btn_orange2::after{
	content: url('../images/common/icon_insta.png');
	display: block;
	position: absolute;
	top: calc(50% - 15px);
	right: 30px;
	width: 29px;
	height: 29px;
}
.btn_orange2:hover {
	background-color:rgba(155,149,138,0.3);
}



.gacha_date{
	border-top:1px solid var(--gray);
	border-bottom:1px solid var(--gray);
	padding:15px;
	margin-top:40px;
}

@media only screen and (max-width: 767px){
	.gacha_date {
	    margin-top: 26px;
	}
	.btn_orange,
	.btn_orange2 {
		font-size:1.5rem;
	}

}
.eventinfo_wrap_3{
	padding:40px 40px 40px 80px;
}
.eventinfo3_intro{
	display:flex;
	align-items: flex-start;
	gap:70px;
}
.eventinfo3_intro img{
	max-width:290px;
}

.eventinfo3_intro h5{
	font-family:var(--serif);
	color:var(--darkbrown);
	font-size:1.7rem;
	margin-bottom:30px;
	font-weight:normal;
}
.eventinfo_wrap_3 .btnarea{
	text-align:center;
	width:100%;
	padding-top:40px;
	padding-bottom:0px;
}

@media only screen and (max-width: 767px){
	.eventinfo_wrap_3{
		display:flex;
		flex-direction:column;
		align-items: flex-start;
		gap:30px;
		padding:30px;
	}
	.eventinfo3_intro{
		display:flex;
		flex-direction:column-reverse;
		gap:20px;
	}
	.eventinfo3_intro h5{
		font-size:1.4rem;
		margin-bottom:26px;
	}
	.eventinfo3_intro p{
		font-size:1.3rem;
	}
	.eventinfo_wrap_3 .btnarea{
		padding-top:10px;
	}
}

.tbl_a {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
	border: none;
	font-size:1.3rem;
}
.tbl_a tr:first-child th{
	border-top: 1px solid var(--gray);
}
.tbl_a th{
	display: block; 
	width: 100%;
	padding: 6px 0;
	vertical-align: top;
	text-align: left;
	box-sizing: border-box;
	font-weight:600;
	white-space:nowrap;
}
.tbl_a td {
	display: block; 
	width: 100%;
	padding: 6px 0;
	vertical-align: top;
	text-align: left;
	box-sizing: border-box;
	border-bottom: 1px solid var(--gray);
}

@media screen and (min-width: 768px) {
	.tbl_a {
		font-size:1.6rem;
	}
	.tbl_a th,
	.tbl_a td {
		display: table-cell; 
	}
	.tbl_a tr th:first-child {
		width: 160px;
	}
	.tbl_a tr:first-child td {
		border-top: 1px solid var(--gray);
	}
	.tbl_a th{
		border-bottom: 1px solid var(--gray);
		padding: 20px 0;
	}
	.tbl_a td {
		border-bottom: 1px solid var(--gray);
		padding: 20px 0;
	}
}


.p-eventslogan{
	padding:125px 0;
	background:url("../images/100th/bg_slogan.jpg");
	background-size:cover;
	background-position:center bottom;
}
.slogan_intro{
	text-align:center;
}
.slogan_intro h3{
	font-family:var(--serif);
	margin-bottom:57px;
	font-size:2.9rem;
	font-weight:normal;
}

.slogan_wrap{
	display:flex;
	gap:26px;
	margin-top:95px;
	align-items:center;
}
.slogan_box{
	background:#fff;
	border:1px dotted var(--navy);
	padding:20px 30px 0 30px;
	height:175px;
	width:45%;
	border-radius:12px;
}
.slogan_box .slogan_str{
	font-family:var(--serif);
	margin-bottom:15px;
	font-size:2.1rem;
	color:var(--navy);
}
.slogan_box .slogan_exp{
	font-family:var(--serif);
}

.xline_wrap {
	position : relative;
	height: 100%;
	width:63px;
	text-align:center;
}

.xline {
	content: "";
	height: 1px;
	width: 63px;
	background-color :var(--navy);
	position: absolute;
	top: 50%;
}

@media screen and (max-width: 767px) {
	.p-eventslogan{
		padding:100px 0;
	}
	.slogan_intro h3{
		margin-bottom:48px;
		font-size:2.2rem;
	}
	.slogan_intro p{
		text-align:left;
		font-size:1.4rem;
	}
	.slogan_wrap{
		flex-direction:column;
		gap:15px;
		margin-top:30px;
	}
	.slogan_box{
		padding:20px 30px;
		height:auto;
		width:100%;
	}
	.slogan_box .slogan_str{
		margin-bottom:15px;
		font-size:1.6rem;
	}
	.slogan_box .slogan_exp{
		font-size:1.3rem;
	}
	.xline_wrap {
		position : relative;
		height: 50px;
		width:100%;
		text-align:center;
	}

	.xline {
		content: "";
		height: 50px;
		width: 1px;
		position: absolute;
		top: 0;
		left: 50%;
	}
}

.about_100thlogo{
	background:#fff;
	margin-top:110px;
	border:15px solid var(--beige);
	padding:60px 50px;
	display:flex;
	align-items:center;
	gap:70px;
}
.about_100thlogo img{
	width:185px;
	align-self: center;
}
.about_100thlogo h4{
	font-family:var(--serif);
	color:var(--navy);
	font-size:1.9rem;
	margin-bottom:30px;
	font-weight:normal;
}

@media screen and (max-width: 767px) {
	.about_100thlogo{
		margin-top:35px;
		border:8px solid var(--beige);
		padding:26px 22px;
		flex-direction:column;;
		align-items:center;
		gap:35px;
	}
	.about_100thlogo img{
		width:100px;
		align-self: center;
	}
	.about_100thlogo h4{
		font-size:1.4rem;
	}
	.about_100thlogo p{
		font-size:1.2rem;
	}
}

.p-100th_message .p-100th_header{
	margin-bottom:80px;
}
.p-100th_message{
	padding-bottom:80px;
}
.box_100th_message{
	display:grid;
	align-items:center;
	grid-template-rows: 100px 1fr;
	grid-template-columns: 315px 1fr;
	gap:10px 100px;
	padding:37.5px 0;
	font-family:var(--serif);
	border-bottom:1px solid var(--gray);
	grid-template-areas:
		"areaA areaB"
		"areaA areaC";
}
#itemA {
	grid-area: areaA;
}
#itemB {
	grid-area: areaB;
}
#itemC {
	grid-area: areaC;
}
.box_100th_message:first-child{
	border-top:1px solid var(--gray);
}
.ms_katagaki{
	font-size:1.7rem;
}
.ms_name{
	font-size:2.2rem;
}
.ms_naiyo{
	font-size:1.5rem;
}

.p-100th_bnr{
	background:#FAFAFA;
	padding:60px 15px;
	text-align:center;
}

@media only screen and (max-width: 767px){
	.p-100th_message .p-100th_header p.p-100th_messageexp {
		font-size: 1.4rem;
		text-align: left;
		padding:0 20px;
	}
	.p-100th_message .p-100th_header{
		margin-bottom:60px;
	}
	.box_100th_message{
		align-items:center;
		grid-template-rows: 122px 1fr;
		grid-template-columns: 122px 1fr;
		gap:10px 30px;
		padding:20px;
		grid-template-areas:
			"areaA areaB"
			"areaC areaC";
	}
	.ms_katagaki{
		font-size:1.1rem;
		margin-bottom:10px;
	}
	.ms_name{
		font-size:1.5rem;
	}
	.ms_naiyo{
		font-size:1.3rem;
	}
	.p-100th_bnr{
		padding:40px 15px;
	}
}

/*etH[*/
.con-100thmemory{
	background:url("../images/100th/bg_slogan.jpg");
	background-size:cover;
	background-position:center bottom;
}

.con-100thmemory .p-intro__text h3{
	margin-bottom:30px;
}
.con-100thmemory .p-intro__text p{
	text-align:center;
	margin-bottom:30px;
}


.memory_form_intro{
	padding-bottom:60px
}
.memory_form_intro img{
	width:200px
}
.p-memoryform{
	background:var(--beige);
	padding:30px 0 80px;
}
.p-memoryform p{
	font-size:1.8rem;
	margin:30px 0 20px;
}
.memori_bikou{
	max-width:700px;
	border-top:1px dotted var(--gray);
	padding:30px;
	text-align:left;
	margin:50px auto;
	font-size:1.4rem;
}
.memori_bikou .kome li{
	font-size:1.4rem;
}
@media only screen and (max-width: 767px){
	.con-100thmemory{
		padding-top:100px;
		background-position:center top;
	}
	.p-memoryform{
		padding:50px 0;
	}
	.p-memoryform p{
		font-size:1.4rem;
		margin:30px 0 20px;
	}
	.memory_form_intro img{
		width:150px
	}
	.con-100thmemory .p-intro__text h3{
		font-size:1.8rem;
		margin-bottom:30px;
	}
	.con-100thmemory .p-intro__text p{
		font-size:1.6rem;
	}
	.memori_bikou{
		padding:30px 0 0;
		text-align:left;
		font-size:1.3rem;
	}
	.memori_bikou .kome li{
		font-size:1.3rem;
	}
}

.p-100th_memories>.inner{
	position:relative;
	margin-top:-130px;
	padding-top:60px;
	background:#fff;
}
.box_memory_wrap{
	padding:50px 30px;
}
.box_memory{
	display:flex;
	gap:30px;
	flex-wrap:wrap;
	border:9px solid var(--beige);
	padding:30px;
	margin-bottom:50px;
}
.box_memory img{
	width:50%;
	border-radius:20px;
}
.box_memory .txtside{
	padding:50px 0 30px;
	width:45%;
}
.box_memory .txtside .title{
	font-size:2rem;
	font-weight:600;
	border-bottom:1px solid var(--brown);
	padding-bottom:15px;
	margin-bottom:15px;
}
.box_memory .staydate span{
	border:1px solid var(--brown);
	padding:5px 20px;
	border-radius:15px;
	font-size:1.3rem;
	margin-right:15px;
}
.box_memory .staydate{
	margin-bottom:10px;
}
@media only screen and (max-width: 767px){
	.p-100th_memories .inner .p-100th_header {
		padding:50px 0 20px;
		margin-top:-120px;
		background:#fff;
	}
	.box_memory_wrap{
		padding:0px 0px;
	}
	.box_memory{
		flex-direction:column;
		gap:15px;
		padding:15px;
	}
	.box_memory img{
		width:100%;
		border-radius:10px;
	}
	.box_memory .txtside{
		padding:0px 0;
		width:100%;
	}
	.box_memory .staydate{
		font-size:1.4rem;
	}
	.box_memory .staydate span{
		font-size:1.2rem;
		margin-right:10px;
	}
	.box_memory .txtside .title{
		font-size:1.6rem;
		padding-bottom:8px;
		margin-bottom:5px;
	}
	.box_memory .nickname{
		text-align:right;
		font-size:1.4rem;
		margin-bottom:10px;
	}
	.box_memory .episode{
		font-size:1.3rem;
	}
}

.win_notice{
	margin:15px auto;
	max-width:500px;
	font-size:1.4rem !important;
	color:var(--brown);
	padding-top:15px;
	border-top:1px dotted var(--brown);
}