@charset "utf-8";
/* Toyama International Conference Center
-----------------------------------------------------*/

/* ==============================================
    pagetitle
============================================== */
#pagetitle {
	height: 330px;
	text-align: center;
	background: #dbd3be url("image/pagetitle_bg.jpg") no-repeat 50% 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
}

#pagetitle.photo {
	height: 428px;
	background-size: cover;
	background-position: center center;
	background: url("image/pagetitle_bg_photo.jpg") no-repeat center center / cover;
}

#pagetitle h1 {
	font-family: 'Noto Serif JP', serif;
	margin-top: 80px;
}
#pagetitle h1 strong {
	font-size: 3.125em;
	font-weight: 700;
	line-height: 1.3;
	display: block;
}
#pagetitle h1 strong::after {
	content: "";
	display: block;
	width: 68px;
	height: 1px;
	background: #000;
	margin: 20px auto 30px;
}

#pagetitle h1 span.en {	
	font-size: 14px;
	font-weight: 400;
	display: block;
}

#pagetitle.photo h1 {
	color: #fff;
}
#pagetitle.photo h1 strong::after {
	background: #fff;
}

@media screen and (max-width: 700px) {
	#pagetitle {
		height: 200px;
	}
	#pagetitle.photo {
		height: 240px;
	}
	#pagetitle h1 {
		margin-top: 40px;
	}
	#pagetitle h1 strong {
		font-size: 2.000em;
	}
	#pagetitle h1 strong::after {
		margin: 10px auto 20px;
	}
	#pagetitle h1 span.en {	
		font-size: 12px;
	}
}


/* ==============================================
    subtitle
============================================== */
.subtitle {
	font-size: 2.375em;
	font-weight: 700;
	font-family: 'Noto Serif JP', serif;
	margin: 50px 0 50px;
	text-align: center;
}
.subtitle::after {
	content: "";
	display: block;
	width: 68px;
	height: 3px;
	background: #786a49;
	margin: 30px auto 0;
}

.subt01 {
	font-size: 1.250em;
	margin: 50px 0 40px;
	border-top: 1px solid #b7ad97;
	padding: 10px 20px;
	background: #fafaf5;
	color:  #191919 !important;
	position: relative;
}
.subt01::before {
	content: "";
	width: 100px;
	height: 3px;
	background: #786a49;
	position: absolute;
	top: -2px;
	left: 0;
}

.subt02 {
	font-size: 1.250em !important;
	margin: 50px 0 40px;
	padding: 5px 20px;
	background: #b7ad97;
	color: #fff !important;
}

.subt03 {
	font-size: 1.750em;
	color: #191919 !important;
	font-weight: 700;
	font-family: 'Noto Serif JP', serif;
	line-height: 1.2;
	text-align: center;
	border-top: 1px solid #b7ad97;
	padding-top: 25px;
	margin: 50px 0 30px;
}

.subt03 span.kome {
	display: inline-block;
	margin-left: 10px;
	font-size: 0.750em;
}

.subt-catch {
	font-size: 3.125em !important;
	font-weight: 700;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: -0.1em;
	line-height: 1.2 !important;
	margin: 20px 0 40px !important;
	padding: 0 !important;
	border: none !important;
	color: #a2946f;
}

.archivetitle h2 {
	font-size: 3.125em;
	font-weight: 700;
	font-family: 'Noto Serif JP', serif;
	margin: 0px 0 40px;
	color: #a2946f;
}

@media screen and (max-width: 700px) {
	.subt-catch {
		font-size: 2.250em !important;
	}
}


/* ==============================================
    main-visual
============================================== */
#main-visual {
	background: #fafaf5;
	padding: 50px 0;
	margin-bottom: 50px;
}
#main-visual.photo {
	background: none;
	padding: 0;
}

#main-visual .contentsInner {
	position: relative;
}
#main-visual strong {
	display: block;
	font-family: 'Noto Serif JP', serif;
	font-size: 4.375em;
	font-weight: 700;
	color: #a2946f;
	line-height: 1.2;
	letter-spacing: -0.1em;
}
#main-visual strong span {
	font-size: 0.314em;
	letter-spacing: normal;
	display: block;
	margin-top: 30px;
}

#main-visual.photo strong {
	color: #fff;
	text-shadow: 0px 7px 7px rgba(0, 0, 0, 0.35);
	position: absolute;
	top: 10px;
	left: 10px;
}
#main-visual.photo strong span {
	color: #fff;
}

#main-visual .subcatch {
	font-size: 1.125em;
	margin-top: 30px;
}

@media screen and (max-width: 700px) {
	#main-visual strong {
		font-size: 2.000em;
	}
	#main-visual strong span {
		font-size: 0.500em;
	}
}


/* ==============================================
    catchcopy
============================================== */
.catchcopy {
	background: #fafaf5;
	padding: 30px 0;
	line-height: 1.4;
	margin-bottom: 50px;
}
.catchcopy em {
	display: block;
	font-size: 0.875em;
	margin-bottom: 10px;
}
.catchcopy strong {
	font-size: 2.750em;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	color: #a2946f;
}
.catchcopy p {
	margin-top: 30px;
}

/* ==============================================
    googlemap
============================================== */
.map_wrap {
	position: relative;
	padding-top: 56.25%;
	height: 0;
	overflow: hidden;
}
.map_wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ==============================================
    
============================================== */
ul.btn_list {
	list-style: none;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 30px auto;
}
ul.btn_list li {
	margin: 10px 10px !important;
}

.relatedlinks ul.btn_list li {
	width: 30%;
}
.relatedlinks ul.btn_list li a {
	width: 100%;
	min-width: inherit;
	margin: 5px 0;
}

@media screen and (max-width: 700px) {
	ul.btn_list {
		display: block;
	}
	.relatedlinks ul.btn_list li {
		width: 100%;
	}
}

/* ==============================================
    reason
============================================== */
body.reason .entry-content ul {
	margin: 50px 0;
}
body.reason .entry-content ul li {
	margin: 20px 0;
}

/* ==============================================
    utilization
============================================== */
.entry-content .usage_flow {}
.entry-content .usage_flow h3 {
	border-top: 1px solid #b7ad97;
	padding-top: 90px;
	position: relative;
}
.entry-content .usage_flow h3 strong {
	display: inline-block;
	background: #a2946f;
	color: #fff;
	padding: 3px 5px;
}

.entry-content .usage_flow h3::before {
	content: "";
	display: block;
	background: url("image/arrow_flow.svg") no-repeat 0 0 / contain;
	width: 40px;
	height: 40px;
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
}

.entry-content .usage_flow h3:first-child {
	padding-top: 40px;
}
.entry-content .usage_flow h3:first-child::before {
	display: none;
}

/* ==============================================
    utilization guide
============================================== */
body.utilization.guide {

}
body.utilization.guide .entry-content h2 {
	/*font-size: 1.250em;*/
	margin: 80px 0 40px;
	border-top: 1px solid #b7ad97;
	padding: 20px 20px;
	background: #fafaf5;
	color:  #191919;
	position: relative;
}
body.utilization.guide .entry-content h2::before {
	content: "";
	width: 100px;
	height: 3px;
	background: #786a49;
	position: absolute;
	top: -2px;
	left: 0;
}

body.utilization.guide .entry-content h3 {
	font-size: 1.250em;
	margin: 50px 0 30px;
	padding: 5px 20px;
	background: #b7ad97;
	color: #fff;
}


/* ==============================================
    utilization eqipment
============================================== */
table.equipList th,
table.equipList td {
	padding: 10px 10px;
	font-size: 0.875em;
	line-height: 1.2;
}
table.equipList td:nth-child(1),
table.equipList td:nth-child(2),
table.equipList td:nth-child(3) {
	white-space: nowrap;
}
table.equipList td:nth-child(4) {
	font-size: 13px;
}
table.equipList td.unit {
	text-align: center;
}

table.equipList td.item .modal {
	display: inline-block;
	cursor: pointer;
}
table.equipList td.item .fuwan::after,
table.equipList td.item .modal::after {
	content: "";
	background: url("image/icon_camera.svg") no-repeat 0 0 / contain;
	width: 24px;
	height: 24px;
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
}


#fuwanInline {
	max-width: 1000px;
	max-height: 70vh;
	overflow: auto;
}
body.eqipment #fuwanLead {
	padding: 10px;
	margin-bottom: 20px !important;
	text-align: left;
	background: #9B885B;
	color: #fff;
}
.inlineContent {
	
}
.item-photo {
	width: 80%;
	margin: 0 auto 30px !important;
	text-align: center;
}
.item-photo p {
	margin-top: 10px !important;
	text-align: center;
}
.item-photo img {
    max-width: 100%;
    max-height: 60vh !important;
}

@media screen and (max-width: 768px) {
	#fuwanInline {
		max-width: 98%;
		max-height: 60vh;
		overflow: auto;
	}
	.item-photo {
		width: 100%;
	}
	.item-photo p {
		text-align: left;
	}
}


/* ==============================================
    utilization document
============================================== */
.document-filelist {
	margin: 40px 0;
}
.document-filelist p {
	margin-bottom: 30px;
}

.document-filelist dl {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	border-top: 1px dashed #b9b29f;
}
.document-filelist dl:last-child {
	border-bottom: 1px dashed #b9b29f;
}

.document-filelist dt,
.document-filelist dd {
	padding: 10px 10px;
}
.document-filelist dt {
	width: 22em;
	font-weight: bold;
}

.document-filelist dt {
	position: relative;
	display: inline-block;
	margin-left: 15px;
}
.document-filelist dt::before {
	content: "";
	display: inline-block;
	background: url("image/icon_dot_br.svg") no-repeat 0 0 / contain;
	width: 10px;
	height: 10px;
	margin-left: -15px;
	margin-right: 5px;
}


.document-filelist dd {
	padding: 10px 30px;
	width: calc((100% - 22em) / 2);
}
.document-filelist dd a {
	margin-left: 0px;
	border: 1px solid #786a49;
	border-radius: 30px;
	padding: 5px 20px 5px 35px;
	/*width: 10em;*/
	width: 100%;
}
.document-filelist dd a::before {
	width: 18px;
	height: 18px;
	margin-left: -25px;
	top: 50%;
	margin-top: -9px;
}
.document-filelist dd span {
	font-size: 13px;
	color: #666;
	display: inline-block;
	margin-left: 10px;
}

.document-filelist dd a:hover {
	text-decoration: none;
	background: #dfdbd3;
	opacity: 1;
}

@media screen and (max-width: 1200px) {
	.document-filelist dt {
		width: 40%;
	}
	.document-filelist dd {
		padding: 10px 10px;
		width: calc((100% - 40%) / 2);
	}
}

@media screen and (max-width: 1100px) {
	.document-filelist dl {
		flex-wrap: wrap;
	}
	.document-filelist dt {
		width: 100%;
		padding-bottom: 0;
	}
	.document-filelist dd {
		width: 50%;
	}
}




.download-filelist ul {
	list-style: none;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.download-filelist ul::after {
	content: "";
	width: 32%;
	height: 0;
	display: inline-block;
}

.download-filelist li {
	width: 32%;
	margin-bottom: 50px;
}

.plan-list .download-filelist li,
.plan-list .download-filelist ul::after {
	width: 30%;
}

.download-filelist li figure {
	text-align: center;
	margin-bottom: 10px;
}

.plan-list .download-filelist li figure {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	height: 300px;
}

.download-filelist li figure img {
	border: 1px solid #dcd4c4;
}
.download-filelist li strong {
	display: block;
	margin-bottom: 5px;
}
.download-filelist li a.pdf span,
.download-filelist li a span.size {
	font-size: 13px;
	color: #666;
	display: inline-block;
	margin-left: 10px;
}


@media screen and (max-width: 700px) {
	.download-filelist li,
	.download-filelist ul::after {
		width: 48% !important;
	}
}

/* ==============================================
    facility archive
============================================== */
.facility-archive section {
	border-bottom: 1px solid #b5ad96;
	padding-bottom: 30px;
	margin-bottom: 50px;
}
.facility-archive section h2 {
	font-size: 3.125em;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	color: #a2946f;
	margin-bottom: 20px;
}


/* ==============================================
    mailmag
============================================== */
.mailmag_wrap iframe {
	width: 100%;
	height: 340px;
}
@media screen and (max-width: 700px) {
	.mailmag_wrap iframe {
		width: 100%;
		height: 340px;
	}
}


/* ==============================================
    faq archive
============================================== */
.faq-archive section {
	
}
.faq-archive section h2 {
	font-size: 3.125em;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	color: #a2946f;
	margin-bottom: 20px;
}
.faq-archive ul {
	margin: 0 0 50px 0;
	list-style: none;
}
.faq-archive ul li {
	line-height: 1.4;
	margin: 15px 0;
}
.faq-archive ul li a {
	position: relative;
	margin-left: 30px;
	display: inline-block;
	font-size: 1.125em;
}

.faq-archive ul li a::before {
	content: "Q";
	font-size: 20px;
	line-height: 20px;
	display: block;
	width: 30px;
	position: absolute;
	top: 0;
	left: -30px;
}
.faq-content {
	margin-top: 30px;
}
.faq-content .entry-title {
	font-size: 1.750em;
	font-family: 'Noto Serif JP', serif;
	margin: 0px 0 60px 0px;
	border-bottom: 1px solid #b7ad97;
	padding: 0px 0px 0 60px;
	color:  #191919;
	position: relative;
}
.faq-content .entry-title::before {
	content: "Q";
	color: #b7ad97;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	font-size: 60px;
	line-height: 60px;
	display: block;
	width: 60px;
	position: absolute;
	top: -30px;
	left: 0px;
}

.faq-content .entry-content {
	font-size: 1.125em;
	margin: 0 30px 30px 60px;
	position: relative;
}
.faq-content .entry-content::before {
	content: "A";
	color: #b7ad97;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	font-size: 60px;
	line-height: 60px;
	display: block;
	width: 60px;
	position: absolute;
	top: -30px;
	left: -60px;
	opacity: 0.5;
}

@media screen and (max-width: 700px) {
	.faq-content .entry-title::before,
	.faq-content .entry-content::before {
		font-size: 40px;
		width: 40px;
		top: -20px;
	}
	.faq-content .entry-content::before {
		left: -40px;
	}
	.faq-content .entry-title {
		padding: 0px 0px 0 40px;
	}
	.faq-content .entry-content {
		margin: 0 10px 30px 40px;
	}
}

/* ==============================================
    facility
============================================== */
.summary_table {
	margin: 20px 0 50px 0;
}
.summary_table table {
	width: 100%;
	margin-bottom: 20px;
}
.summary_table th,.summary_table td {
	border: 1px solid #ccc;
	padding: 10px 5px;
	font-weight: 400;
}
.summary_table th {
	background: #eee;
	padding: 10px 10px;
}

.fee_table {
	margin: 20px 0 50px 0;
}
.fee_table table {
	width: 100%;
	margin-bottom: 20px;
}
.fee_table th,.fee_table td {
	border: 1px solid #ccc;
	padding: 10px;
	font-weight: 400;
	text-align: center;
	width: 14%;
}
.fee_table th {
	background: #eee;
}

.fee_table h3 {
	color: #a2946f;
	position: relative;
}
.fee_table h3 .btn_detail {
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 1rem;
}
.fee_table p.tax {
	font-size: 12px;
	text-align: right;
	margin-top: 0px;
}
.fee_table .notes {
	font-size: 0.875em;
}
@media screen and (max-width: 700px) {

	.fee_table h3 .btn_detail {
		position: inherit;
		bottom: inherit;
		right: inherit;
		text-align: right;
	}
	.fee_table table {
		overflow: auto;
		white-space: nowrap;
		display: block;
		width: auto;
	}
	.fee_table table tbody {
		width: 100%;
	}
	.fee_table table::-webkit-scrollbar {
		height: 5px;
	}
	.fee_table table::-webkit-scrollbar-track {
		background: #f1f1f1;
	}
	.fee_table table::-webkit-scrollbar-thumb {
		background: #bcbcbc;
	}
}

/* ==============================================
    case
============================================== */
.case-cate-body {

}
.case-cate-body .case-catch {
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	line-height: 1.4;
	font-size: 1.500em;
	color: #9B885B;
	margin-bottom: 30px;
}
.case-cate-body .case-content ul {
	list-style: none;
	margin-left: 0;
}
.case-cate-body .case-content ul li {
	padding-left: 20px;
	display: block;
	margin-bottom: 10px;
}
.case-cate-body .case-content ul li::before {
	content: "●";
	font-size: 10px;
	color: #9B885B;
	display: inline-block;
	margin-left: -20px;
	width: 20px;
}


/*.entry-content ul,
.entry-content ol {
	margin: 20px 0 30px 30px;
}
.entry-content li {
	line-height: 1.4;
	margin: 5px 0;
}

.entry-content p {
	font-size: 1em;
	line-height: 1.6;
	margin-bottom: 1.5em;
}*/

.case-post-list ul {
	list-style: none;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.case-post-list ul::after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}/**/
.case-post-list li {
	display: block;
	width: 32%;
	border: 1px solid #ccc;
	padding: 20px;
	margin-bottom: 20px;
}
.case-post-list li a {
	color: inherit;
}
.case-post-list li a:hover {
	text-decoration: none;
}
.case-post-list li h3 {
	line-height: 1.2;
	color: #786a49;
	min-height: 3em;
	display: flex;
	align-items: center;
	border-bottom: 1px solid #786a49;
	margin-bottom: 10px;
}
.case-post-list li p {
	font-size: 0.875em;
}
.case-post-list li figure {
	margin: 20px auto;
}

.case-post-list li dt,
.case-post-list li dd {
	padding: 5px;
	font-size: 0.875em;
}
.case-post-list li dt {
	float: left;
	clear: left;
	width: 6em;
}
.case-post-list li dd {
	margin-left: 6em;
}


.case-post-list li a.btn_detail {
	display: block;
	text-align: center;
	background: #f8f9f8;
	border: 1px solid #786a49;
	padding: 5px;
	margin-top: 20px;
}


.case_list {
	background: #fafaf5;
	padding: 20px 50px;
	border-top: 3px solid #b7ad97;
}
.case_list h2 {
	font-size: 1.750em;
	font-family: 'Noto Serif JP', serif;
	color: #6f5a28;
	margin-bottom: 10px;
}
.case_list h3 {
	font-size: 1.750em;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
}
.case_list ul {
	list-style: none;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.case_list li {
	width: 45%;
}
.case_list li a.btn {
	width: 100%;
}


.relation_block {
	background: #fafaf5;
	padding: 20px 50px;
	border-top: 3px solid #b7ad97;
}
.relation_block h2 {
	font-size: 1.750em;
	font-family: 'Noto Serif JP', serif;
	color: #6f5a28;
	margin-bottom: 10px;
}
.relation_block ul {
	list-style: none;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.relation_block li {
	width: 45%;
	margin-bottom: 10px;
}

.relation_list li a {
	display: inline-block;
	margin-left: 12px;
	position: relative;
}
.relation_list li a::before {
	content: "";
	display: inline-block;
	background: url("image/arrow01.svg") no-repeat 0 0 / contain;
	width: 6px;
	height: 6px;
	margin-right: 6px;
	margin-left: -12px;
}

.category_btn {
	margin: 30px auto;
}
.category_btn ul {
	justify-content: center;
}
.category_btn li {
	margin: 5px;
	width: auto;
}
.category_btn li a {
	display: block;
	background: #b7ad97;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 20px 20px;;
	border-radius: 40px;
}
.category_btn li a:hover {
	text-decoration: none;
}

@media screen and (max-width: 700px) {
	
	.case_list {
		padding: 30px 20px;
		margin: 0 -2%;
	}
	.case-post-list ul,
	.case_list ul {
		display: block;
	}
	.case-post-list li,
	.case_list li {
		width: 100%;
	}
	.relation_block {
		padding: 15px 20px;
	}
	.relation_block li {
		width: 100%;
	}
}


.case-detail {
	margin-bottom: 50px;
}

.case-detail h1 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	line-height: 1.4;
	font-size: 2.375em;
	margin: 50px 0 50px;
	text-align: center;
}
.case-detail h1::after {
	content: "";
	display: block;
	width: 68px;
	height: 3px;
	background: #786a49;
	margin: 30px auto 0;
}

.case-detail .case-lead {
	font-size: 2.000em;
	font-weight: 700;
	font-family: 'Noto Serif JP', serif;
	color: #a2946f;
	text-align: center;
	margin-bottom: 20px;
}

.case-detail h2 {
	font-size: 1.250em;
	margin: 50px 0 40px;
	border-top: 1px solid #b7ad97;
	padding: 10px 20px;
	background: #fafaf5;
}

.case-detail .case-example {
	font-size: 1.250em;
	border: 1px solid #b7ad97;
	padding: 10px 20px;
}

.case-detail table {
	margin: 10px auto 20px;
	width: 100%;
}
.case-detail th,
.case-detail td {
	border: 1px solid #ddd;
	padding: 10px;
}
.case-detail th {
	background: #fafaf5;
	white-space: nowrap;
}

.case-detail td.price {
	text-align: right;
}
.case-detail td.price strong {
	font-size: 1.250em;
}
.case-detail .attention {
	font-size: 13px;
	line-height: 1.6;
	color: #666;
}


.case-detail .case-photo {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 50px 0;
}
.case-detail .case-photo figure {
	width: 31.3333%;
	margin: 20px 1%;
	text-align: center;
}
.case-detail .case-schedule figure img,
.case-detail .case-plan figure img {
	border: 1px solid #ddd;
}
.case-detail .case-photo figure figcaption {
	display: flex;
	justify-content: center;
	text-align: left;
	font-size: 1em;
	line-height: 1.3;
	margin-top: 10px;
}
.case-detail .case-facility a {
	
}

.case-detail .btn_pdf {
	margin: 50px 0;display: inline-block;
}
.case-detail .btn_pdf a {
	
}


/* ==============================================
    info
============================================== */
.info-head {
	margin-bottom: 20px;
}
.info-head .event-title {
	font-size: 1.25em;
	font-family: 'Noto Serif JP', serif;
	padding: 5px;
	background: #fafaf5;
	border-top: 1px solid #b7ad97;
	border-bottom: 1px solid #b7ad97;
	margin-bottom: 20px;
}
.info-head .entry-date {
	font-size: 1.125em;
	font-weight: 700;
	margin-bottom: 20px;
	color: #a2946f;
}
.info-head .entry-category span {
	display: inline-block;
	font-size: 12px;
	line-height: 24px;
	background: #a2946f;
	padding: 0px 10px;
	margin: 5px;
	color: #fff;
}
.info-head .entry-category span.important {
	background: #f00;
}
.entry-body-wrap {
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}
.entry-body-wrap .entry-body {
	flex: 1;
	width: 100%;
}
.entry-body-wrap .entry-photo {
	order: 2;
	max-width: 30%;
	margin-left: 50px;
	text-align: center;
}
.entry-body-wrap .entry-photo figure {
	margin: 0 auto 20px;
	text-align: center;
}
.entry-body-wrap .info-file {
	margin: 20px 0;
}
/*.entry-body-wrap .info-file a {
	position: relative;
	display: inline-block;
	margin-left: 25px;
}

.entry-body-wrap .info-file a::before {
	position: absolute;
	content: "";
	display: inline-block;
	background: url("image/file_pdf.svg") no-repeat 0 0;
	background-size: contain;
	width: 20px;
	height: 20px;
	margin-left: -25px;
}

.entry-body-wrap .info-file a[href$=".pdf"]::before {
	background-image: url("image/file_pdf.svg");
}

.entry-body-wrap .info-file a[href$=".docx"]:before,
.entry-body-wrap .info-file a[href$=".doc"]::before{
	background-image: url("image/file_word.svg");
}

.entry-body-wrap .info-file a[href$=".xlsx"]::before,
.entry-body-wrap .info-file a[href$=".xlsm"]::before,
.entry-body-wrap .info-file a[href$=".xls"]::before{
	background-image: url("image/file_excel.svg");
}*/



@media screen and (max-width: 700px) {
	.entry-body-wrap {
		display: block;
	}
	.entry-body-wrap .entry-body {
	}
	.entry-body-wrap .entry-photo {
		max-width: 80%;
		margin: 30px auto;
	}
}


/* ==============================================
    event
============================================== */
.event-archive article {
	padding-bottom: 30px;
	border-bottom: 1px dashed #b7ad97;
	margin-bottom: 50px;
}
.event-archive article .event-title {
	font-size: 1.25em;
	font-family: 'Noto Serif JP', serif;
	padding: 5px;
	background: #fafaf5;
	border-top: 1px solid #b7ad97;
	border-bottom: 1px solid #b7ad97;
	margin-bottom: 20px;
}

.event-archive article .event-info {
	font-size: 1.125em;
	font-weight: 700;
	margin-bottom: 20px;
	color: #a2946f;
}

.event-archive article .entry-category {
	margin-bottom: 20px;
}
.event-archive article .entry-category span {
	display: inline-block;
	font-size: 12px;
	line-height: 24px;
	background: #ccc;
	padding: 0px 10px;
	margin: 5px;
	color: #fff;
}
.event-archive article .entry-category span.cat1 {
	background: #00A3E0;
}
.event-archive article .entry-category span.cat2 {
	background: #659C1F;
}
.event-archive article .entry-category span.cat3 {
	background: #B09011;
}
.event-archive article .entry-category span.cat4 {
	background: #18A578;
}
.event-archive article .entry-category span.cat6 {
	background: #416137;
}

.event-archive article .event-content {
	display: flex;
	justify-content: space-between;
}
.event-archive article .event-content .event-photo {
	order: 2;
	margin-left: 30px;
}
.event-archive article .event-content .event-detail {
	flex: 1;
	width: 100%;
	
}
.event-archive article .event-content figure {
	text-align: center;
	margin-bottom: 20px;
}
.event-archive article .event-content figure figcaption {
	margin-top: 5px;
}

.event-archive article .event-content table {
	margin-bottom: 30px;
	border-top: 1px solid #ddd4c0;
	width: 100%;
}
.event-archive article .event-content table th,
.event-archive article .event-content table td {
	padding: 10px 10px;
	border-bottom: 1px solid #ddd4c0;
	font-size: 0.875em;
	background: #fff;
}
.event-archive article .event-content table th {
	font-weight: 400;
	background: #fafaf5;
	width: 10em;
	text-align: center;
}
.event-archive article .event-content table td {
	word-break: break-all;
}

.file-link a {
	position: relative;
	display: inline-block;
	margin-left: 25px;
}
.file-link span {
	display: inline-block;
	margin-left: 5px;
	font-size: 0.875em;
	color: #666;
}
.file-link a::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: "";
	display: inline-block;
	background: url("image/file_other.svg") no-repeat 0 0;
	background-size: contain;
	width: 20px;
	height: 20px;
	margin-left: -25px;
}

.file-link a[href$=".pdf"]::before {
	background-image: url("image/file_pdf.svg");
}

.file-link a[href$=".docx"]:before,
.file-link a[href$=".doc"]::before{
	background-image: url("image/file_word.svg");
}

.file-link a[href$=".xlsx"]::before,
.file-link a[href$=".xlsm"]::before,
.file-link a[href$=".xls"]::before{
	background-image: url("image/file_excel.svg");
}

@media screen and (max-width: 700px) {
	.event-archive article .event-content {
		display: block;
	}
	.event-archive article .event-content .event-photo {
		margin: 0 auto 30px;
		text-align: center;
	}
}

/* ==============================================
    sitemap
============================================== */
.sitemap-list {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.sitemap-list nav {
	width: 48%;
}
.sitemap-list nav ul {
	list-style: none;
	margin: 0;
}
.sitemap-list nav ul ul {
	list-style: none;
	margin: 10px 0 0 35px;
}

.sitemap-list nav li {
	margin-bottom: 20px;
}
.sitemap-list nav li li {
	margin-bottom: 10px;
}
.sitemap-list nav li a {
	display: inline-block;
	margin-left: 10px;
}
.sitemap-list nav li a::before {
	content: "";
	background: url("image/arrow01.svg") no-repeat 0 0 / 8px 8px;
	width: 10px;
	height: 10px;
	display: inline-block;
	margin-left: -10px;
}

@media screen and (max-width: 700px) {
	.sitemap-list {
		display: block;
	}
	.sitemap-list nav {
		width: 100%;
	}
}

/* ==============================================
    link
============================================== */

body.link .entry-content ul {
	margin-left: 0;
	list-style: none;
}
body.link .entry-content ul li a {
	display: inline-block;
	margin-left: 20px;
}
body.link .entry-content ul li a::before {
	content: "";
	display: inline-block;
	background: url("image/arrow01.svg") no-repeat 0 0 / contain;
	width: 10px;
	height: 10px;
	margin-right: 10px;
	margin-left: -20px;
}

/* ==============================================
    contact
============================================== */
.contact_block th {
	text-align: left;
}

.contact_block td p {
	margin-bottom: 0;
}

.contact_block .require {
	font-size: 12px !important;
	line-height: 16px;
	margin: 10px;
	display: inline-block;
	background: #cc6600;
	color: #fff;
	padding: 2px 5px;
}

.contact_block .note {
	color: #555;
	font-size: 0.875em;
}

.contact_block div.use_block {
	border-bottom: 3px solid #786a49;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.contact_block div.ask_block {
	margin-bottom: 20px;
}

.contact_block td div.f3,
.contact_block td div.f2,
.contact_block td div.multi {
	border-bottom: 1px dashed #aaa;
	padding-bottom: 10px;
	margin-bottom: 10px;
}



@media screen and (max-width: 700px) {
	.contact_block th,
	.contact_block td {
		display: block;
		width: 100%;
	}
	.contact_block .note {
		display: block;
		margin: 5px 0;
	}
}

.contact_block input,
.contact_block textarea,
.contact_block select {
	outline: none;
}

.contact_block input[type="text"],
.contact_block input[type="email"],
.contact_block input[type="tel"],
.contact_block textarea,
.contact_block select {
	padding: 5px 10px;
	font-size: 1.125em;
	border: 1px solid #8c8c8c;
	margin: 5px 5px;
	/*box-sizing: border-box;*/
}
.contact_block input[type="text"]:focus,
.contact_block input[type="email"]:focus,
.contact_block input[type="tel"]:focus,
.contact_block textarea:focus {
	border: 1px solid #786a49;
}
.contact_block textarea {
	resize: vertical;
	width: 100%;
	height: 8em;
}

.contact_block input[name="zip1"] {
	width: 3em !important;
}
.contact_block input[name="zip2"] {
	width: 4em !important;
}

form .btn_submit {
	text-align: center;
}
form .btn_submit input[type="submit"] {
	font-size: 1.500em;
	background: #2c3f26;
	border: none;
	color: #fff;
	padding: 10px 50px;
	transition: .4s;
	cursor: pointer;
}
form .btn_submit input[type="submit"]:hover {
	opacity: 0.8;
}


.wpcf7-list-item {
    display: inline-block;
    margin: 0 2em 0 0;
}

.wpcf7 form.invalid .wpcf7-response-output {
	border: none;
	background: #ffcccc;
	padding: 10px !important;
	margin: 1em 0 !important;
}

.wpcf7 form.sent .wpcf7-response-output {
	border: none;
	background: #d6fdd4;
	padding: 10px !important;
	margin: 1em 0 !important;
}


.wpcf7-spinner {
	display: block !important;
	margin: 10px auto !important;
}

.wpcf7-not-valid-tip {
	display: none !important;
}
input.wpcf7-not-valid {
	border: 1px solid #cc3333 !important;
	background: #ffcccc !important;
}
span.wpcf7-not-valid {
	background: #ffcccc !important;
}

@media screen and (max-width: 700px) {
	.contact_block input[type="text"],
	.contact_block input[type="email"],
	.contact_block input[type="tel"] {
		width: 100%;
	}
}


/* ==============================================
    pagination
============================================== */
.pagination {
	text-align: center;
	margin: 30px auto;
	overflow: hidden;
}
.pagination span,
.pagination a {
	display: inline-block;
	border: 1px solid #cdcdcd;
	width: 30px;
	line-height: 30px;
	font-size: 0.875em;
	color: #4c4c4c;
	text-align: center;
	background: #fff;
	margin: 2px;
}
.pagination a:hover {
	background: #a2946f;
	border: 1px solid #a2946f;
	color: #fff;
	text-decoration: none;
	opacity: 1;
}
.pagination span {
	background: #a2946f;
	border: 1px solid #a2946f;
	color: #fff;
}
.pagination .prev,
.pagination .next {
	text-indent: -99999px;
	background: url("image/arrow01.svg") no-repeat center center / 16px 16px;
	/*border: none;*/
}
.pagination .prev {
	transform: rotate(180deg);
}


.pagination .prev:hover,
.pagination .next:hover {
	background: url("image/arrow01.svg") no-repeat center center / 16px 16px;
	/*border: none;*/
}