@charset "UTF-8";

/* ========全般======== */
html, body, div, span, figure, img, fieldset,
a, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, small, strong, dl, dt, dd, ol, ul, li,
table, caption, tbody, tfoot, thead, tr, th, td{
	margin:0;
	padding:0;
	border:none;
	outline:none;
}

html{
	font-family:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

body{
	font-size:16px;
	line-height:1.2;
	background:#fff;
	color:#333;
}

section{
	overflow:hidden;
}

a{
	color:#99867c;
    text-decoration:none;
}

a:hover{
	color:#99867c;
    text-decoration:none;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 959px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}


/* ========ヘッダー======== */
header {
	position: fixed;
	top: 0px;
	right: 0px;
	width: 100%;
	height: 55px;
	margin:0;
	padding:0;
	text-align:right;
	z-index:2;
	background:#fff;
}

#top_logo {
	position:absolute;
	top:0;
	left:10%;
	padding:1% 0 0 0;
	text-align:center;
}

#top_logo img {
	width:220px;
}


/* ========パンくずリスト======== */
#pan {
	margin:4% 0 0 0;
	padding:1% 10% 1% 10%;
	border-top:1px solid #ddd;
}

#pan p {
	font-size:0.8em;
	font-weight:500;
}


/* ========メインイメージ======== */
#mainimage {
	margin:0;
	position:relative;
	width:100%;
}

@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
#mainimage .scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
#mainimage .scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
#mainimage .scroll-infinity__list--left {
  animation: infinity-scroll-left 100s infinite linear 0.5s both;
}
#mainimage .scroll-infinity__item {
  width: calc(110vw / 3);
}
#mainimage .scroll-infinity__item>img {
  width: 100%;
}


/* ========タイトル======== */
#concept {
	margin:0 13%;
	padding:0;
	position:absolute;
	top:45%;
	width:80%;
}

#concept h1 {
	margin:0 0 1% 0;
	padding:0;
	font-size:3em;
	line-height:1.6;
}

#concept p {
	margin:0;
	padding:0;
	font-size:0.9em;
	font-weight:600;
	line-height:1.8;
	color:#fff;
}

.concept_bg {
	background:#fff;
	padding:0 1%;
}


/* ========コンテンツボックス======== */
#content-inner {
	margin:-5% 0 0 0;
	padding:5% 13%;
	background:#d5ccc8;
}


/* ========左カラム======== */
#content-inner-left {
	float:left;
	width:63%;
}


/* ========イベント説明======== */
#about {
	margin:0 0 8% 0;
	padding:0;
}

#about h2 {
	margin:0 0 3% 0;
	padding:0;
	font-size:5em;
	font-weight:500;
	line-height:1.6;
	color:#fff;
}

#about_1 {
	margin:0;
	padding:0;
}

#about_1 h3 {
	margin:0 0 5% 0;
	padding:0;
	font-size:2em;
	line-height:1.6;
}

#about_1 p {
	margin:0 0 5% 0;
	padding:0;
	font-size:1em;
	font-weight:500;
	line-height:1.8;
}

#about_1 img {
	width:60%;
}


/* ========当日のスケジュール======== */
#schedule {
	margin:15% 0;
	padding:0;
}

#schedule h2 {
	margin:0 0 1% 0;
	padding:0;
	font-size:5em;
	font-weight:500;
	line-height:1.4;
	color:#fff;
}

#schedule p {
	margin:0 0 8% 0;
	padding:0;
	font-size:1.4em;
	font-weight:600;
	line-height:1.6;
}

#schedule table {
	width:100%;
	margin:5% 0;
	padding:0;
	border-collapse:collapse;
}

#schedule table th {
	width:20%;
	margin:0;
	padding:1.5% 2%;
	font-size:1em;
	line-height:1.6;
	text-align:left;
	border-bottom: solid 2px #e8e3e1;
}

#schedule table td {
	width:80%;
	margin:0;
	padding:1.5% 2%;
	font-size:1em;
	font-weight:500;
	line-height:1.6;
	text-align:left;
	border-bottom: solid 2px #e8e3e1;
}


/* ========会場======== */
#place {
	margin:15% 0;
	padding:0;
}

#place h2 {
	margin:0 0 1% 0;
	padding:0;
	font-size:5em;
	font-weight:500;
	line-height:1.4;
	color:#fff;
}

#place p {
	margin:0 0 8% 0;
	padding:0;
	font-size:1.4em;
	font-weight:600;
	line-height:1.6;
}

#place_1 {
	margin:0;
	padding:0;
}

.place_1_left {
	float:left;
	width:45%;
}

.place_1_right {
	float:left;
	width:50%;
	margin:0 0 0 5%;
}

.place_1_left img {
	width:100%;
}

.place_1_right h3 {
	margin:0 0 8% 0;
	padding:0;
	font-size:1.6em;
	line-height:1.6;
}

#place_1 .place_1_right p {
	margin:0;
	padding:0;
	font-size:1em;
	font-weight:500;
	line-height:1.6;
}

#place_2 {
	margin:8% 0;
	padding:0;
}

.place_2_left {
	float:right;
	width:50%;
	margin:0 5% 0 0;
}

.place_2_right {
	float:right;
	width:45%;
	margin:0;
}

.place_2_left h3 {
	margin:0 0 8% 0;
	padding:0;
	font-size:1.6em;
	line-height:1.6;
}

#place_2 .place_2_left p {
	margin:0;
	padding:0;
	font-size:1em;
	font-weight:500;
	line-height:1.6;
}

.place_2_right img {
	width:100%;
}

#place .under {
	background:#fff;
}

.clear {
	clear:both;
}

#place_access {
	margin:0;
	padding:5% 0 0 0;
	border-top:2px solid #e8e3e1;
}

#place_access h3 {
	margin:0;
	font-size:1.1em;
	font-weight:600;
	line-height:1.6;
}

#place_access p {
	margin:0 0 3% 0;
	font-size:1em;
	font-weight:500;
	line-height:1.6;
}

#place_access .map {
	margin:0 0 0 3%;
	border-bottom:1px solid #99867c;
}


/* ========注意事項など======== */
#information {
	margin:15% 0 0 0;
	padding:0;
}

#information h2 {
	margin:0 0 1% 0;
	padding:0;
	font-size:5em;
	font-weight:500;
	line-height:1.4;
	color:#fff;
}

#information p {
	margin:0 0 8% 0;
	padding:0;
	font-size:1.4em;
	font-weight:600;
	line-height:1.6;
}

#information table {
	width:100%;
	margin:5% 0 8% 0;
	padding:0;
	border-collapse:collapse;
}

#information table th {
	width:20%;
	margin:0;
	padding:2% 2%;
	font-size:1em;
	line-height:1.6;
	text-align:left;
	vertical-align:top;
	border-bottom: solid 2px #e8e3e1;
}

#information table td {
	width:80%;
	margin:0;
	padding:2% 2%;
	font-size:1em;
	font-weight:500;
	line-height:1.6;
	text-align:left;
	border-bottom: solid 2px #e8e3e1;
}


/* ========右カラム======== */
#content-inner-right {
	float:left;
	width:34%;
	margin:2% 0 0 3%;
	padding:0;
}

#content-inner-right_1 {
	background:#fff;
	padding:8% 6%;
}

#content-inner-right_1 h2 {
	margin:0;
	padding:0;
	font-size:1.4em;
	font-weight:600;
	line-height:1.6;
}

#content-inner-right_2 {
	background:#fff;
	margin:10% 0 0 0;
	padding:8% 6%;
}


/* ========開催リスト======== */
.party_list {
	margin:6% 0 0 0;
	padding:6% 0 0 0;
	border-top:3px solid #d5ccc8;
}


/* ========アイコン======== */
.icon {
	margin:0;
	padding:0;
}

.icon p {
	margin:0 0 2% 0;
	padding:0;
	font-size:0.9em;
	font-weight:600;
	line-height:1.6;
	color:#99867c;
}


/* ========開催日時======== */
.day {
	margin:0;
	padding:0;
}

.day h3 {
	margin:0;
	padding:0;
	font-size:1.2em;
	font-weight:600;
	line-height:1.4;
}

.day p {
	margin:0;
	padding:0;
	font-size:1em;
	font-weight:600;
	line-height:1.6;
}


/* ========予約======== */
.reserve {
	margin:8% 0;
	padding:0;
}

.reserve_men {
	margin:0;
	padding:0;
}

.reserve_women {
	margin:13% 0 0 0;
	padding:0;
}

.reserve_men h4 {
	margin:0 0 5% 0;
	padding:4% 5%;
	background:#eee;
}

.reserve_women h4 {
	margin:0 0 5% 0;
	padding:4% 5%;
	background:#eee;
}

.reserve_men .age {
	margin:0 0 3% 0;
	font-size:1.2em;
	font-weight:600;
	color:#99867c;
}

.reserve_women .age {
	margin:0 0 3% 0;
	font-size:1.2em;
	font-weight:600;
	color:#99867c;
}

.reserve_men .conditions {
	font-size:0.9em;
	font-weight:500;
	line-height:1.6;
}

.reserve_men .conditions_s {
	margin:3% 0 0 0;
	font-size:0.8em;
	font-weight:600;
	line-height:1.4;
}

.reserve_women .conditions {
	font-size:0.9em;
	font-weight:500;
	line-height:1.6;
}

.reserve_women .conditions_s {
	margin:3% 0 0 0;
	font-size:0.8em;
	font-weight:600;
	line-height:1.4;
}

.reserve p.entry {
	margin:3% 0 5% 0;
	font-size:1.2em;
	font-weight:600;
	text-align:right;
}

.reserve .tax {
	font-size:0.7em;
}

.reserve .situation_men {
	margin:0 5% 0 0;
	font-size:0.8em;
	font-weight:500;
	border-bottom:1px solid #99867c;
	color:#99867c;
}

.reserve .situation_women {
	margin:0 5% 0 0;
	font-size:0.8em;
	font-weight:500;
	border-bottom:1px solid #99867c;
	color:#99867c;
}

.reserve .entry_btn {
	margin:4% 0 0 0;
	padding:5% 0;
	background:#99867c;
	border-radius:5px;
	color:#fff;
	text-align:center;
}

.reserve .entry_btn p {
	font-size:1em;
	font-weight:600;
}

.reserve .entry_btn_full {
	margin:4% 0 0 0;
	padding:5% 0;
	background:#eee;
	border-radius:5px;
	color:#aaa;
	text-align:center;
}

.reserve .entry_btn_full p {
	font-size:1em;
	font-weight:600;
}

.reserve_women img {
	margin:5% 0 0 0;
	width:100%;
}


/* ========会場======== */
.address {
	border-top:3px solid #d5ccc8;
	margin:10% 0 0 0;
	padding:8% 0 0 0;
}

.address h4 {
	margin:0;
	font-size:1.1em;
	font-weight:600;
}

.address p {
	margin:5% 0;
	font-size:0.9em;
	font-weight:500;
	line-height:1.6;
}


/* ========婚活アドバイザー======== */
#advisor {
	margin:0;
	padding:0;
}

#advisor h3 {
	margin:0;
	padding:0;
	font-size:1.3em;
	font-weight:600;
	line-height:1.6;
}

#advisor-img {
	margin:8% 0;
}

#advisor-img img {
	width:100%;
	height:200px;
	object-fit:cover;
	object-position:100% 10%;
}

#advisor h4 {
	margin:0 0 5% 0;
	font-size:1.1em;
	font-weight:600;
	line-height:1.6;
}

#advisor p {
	margin:0;
	font-size:0.9em;
	font-weight:500;
	line-height:1.6;
}

#advisor a {
	color:#333;
}

#advisor p.advisor_link {
	margin:5% 5% 0 0;
	text-align:right;
	color:#99867c;
}

.advisor_under {
	border-bottom:1px solid #99867c;
}

.clear {
	clear:both;
}


/* ========流れるテキスト======== */
#nt {
	margin:0;
	background:#d5ccc8;
}

.sign {
	align-items: center;
	color: #fff;
	display: flex;
	overflow:hidden;
	width: 100%;
	white-space:nowrap;
	margin:0;
	padding:0;
	z-index: 1;
}
.sign ul {
	animation: flowing 60s linear infinite;
	font-size: 9em;
	font-weight:600;
	transform:translateX(100%);
	margin: 0;
	padding: 0;
}
.sign ul li{
	display: inline-block;
	padding-right: 30px;
}

@keyframes flowing {
	0% { transform:translateX(0); }
	100% { transform:translateX(-100%); }
}


/* ========フッター======== */
footer {
	margin:0;
	padding:5% 10% 3% 15%;
	background:#222;
	color:#fff;
}

.footer_list_1 {
	float:left;
	width:25%;
}

.footer_list_2 {
	float:left;
	width:50%;
}

.footer_list_1 p {
	margin:0 0 10% 0;
	padding:0;
	font-size:1em;
	line-height:2;
	letter-spacing:2px;
	font-family: 'Josefin Sans', sans-serif;
}

.footer_list_2 p {
	margin:0 0 5% 0;
	padding:0;
	font-size:1em;
	line-height:2;
	letter-spacing:2px;
	font-family: 'Josefin Sans', sans-serif;
}

.footer_list_1 a {
	color:#fff;
	text-decoration:none;
}

.footer_list_2 a {
	color:#fff;
	text-decoration:none;
}

ul {
	list-style:none;
}

li {
	margin:0;
	padding:0 0 3% 0;
	font-size:0.9em;
	line-height:1.8;
}

li.sns img {
	padding:5% 2% 0 0;
	width:30px;
}

.under_1 {
	border-bottom:1px solid #666;
}

.footer_btn_1 {
	width:50%;
	margin:0;
	padding:1% 0;
	font-size:0.9em;
	line-height:2.2;
	letter-spacing:1px;
	background:#666;
	text-align:center;
}

.clear {
	clear:both;
}

#copyright p {
	margin:5% 0 0 0;
	padding:0;
	font-size:0.65em;
	line-height:2;
	text-align:right;
}


