@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

body {
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;	
}
body:lang(zh-CN), .no-sidebar .entry-content:lang(zh-CN) {
	font-family: "Noto Sans JP",'SimSun', 'SimHei',"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;
}
p .aligncenter {
	margin: 0 auto;
}
.entry-content p.tx-c {
	text-align: center;
}
.entry-content h2 {
	background-color: #F3F3F3;
	padding: 1.5rem 1rem;
	font-size: 1.75rem;
	border: 1px solid #E0E0E0;
	border-width: 1px 0;
}
.entry-content h3 {
	margin: 2rem auto;
	font-size: 1.5rem;
	padding: 0.25rem 1rem;
	border-left: 5px solid #888;
}
.entry-content h4 {
	font-size: 1.375rem;
	margin: 1.5rem auto;
	padding-left: 1.5rem;
	position: relative;
}
.entry-content h4::before {
	position: absolute;
	left: 0;
	top: 16px;
	content: '';
	width: 16px;
	height: 1px;
	background-color: #000;
}
.entry-content h5 {
	margin: 1.5rem auto;
	font-size: 1.25rem;
	position: relative;
	padding: .75rem 0 .75rem 3rem;
}
.entry-content h5::before {
	position: absolute;
	left: 0;
	top: 26px;
	content: '';
	width: 40px;
	height: 1px;
	background-color: #000;
}
body.no-sidebar:not(.search-results).single.single-tour article:not(.type-page) .entry-content {
	padding: 3rem 0 1rem 0;
}
.tour-wrap {
	max-width: 1300px;
	margin: 0 auto;
	padding: 0 1rem 5rem 1rem;
}
.tour-wrap table {
	margin-bottom: 3rem;
}
.tour-wrap table th, .tour-wrap table td {
	display: block;
	width: 100%;
	padding: .5rem;
}
.tour-wrap table th {
	background-color: #E3E3E3;
	color: #000;
}
.tour-point {
	background: repeating-linear-gradient(-45deg,#FEEEBE 0 8px,#fff 8px 16px);
	padding: 2rem;
	margin: 0 auto 3.5rem auto;
}
.tour-point .inner {
	background: #FFF;
	margin: 0 auto;
	padding: 2rem;
}
.tour-point h2 {
	position: relative;
	text-align: center;
	margin: 0 auto 1.5rem auto;
	font-size: 2.25rem;
	padding: 1rem;
}
.tour-point h2::before {
	position: absolute;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: '';
	width: 80px;
	height: 2px;
	background-color: #FFD157;
}
.tour-point p {
	font-size: 1.125rem;
	line-height: 2.25;
}
.tour-point p:last-child {
	padding-bottom: .75rem;
}
.tour-info {
	padding: 2rem 2.5rem;
	margin: 0 auto 6rem auto;
	background-color: #F2F9FB;
}
.tour-info h2 {
	border-left: 5px solid #68C2EE;
	padding: 0 .75rem;
	font-size: 1.5rem;
	margin: 1rem auto;
}
.plan {
	margin: 0 auto;
	padding: 0 0 3rem 0;
}
.plan h2, .pamphlet h2 {
	background-color: #0C92CB;
	color: #FFF;
	padding: 1.5rem 1rem;
	margin: 0 auto 2rem auto;
}
.plan h3 {
	background-color: #DEF4FA;
	padding: .5rem .75rem;
	margin: 0 auto 1rem auto;
	font-size: 1.25rem;
}
.pamphlet ul.pam-col2 {
	list-style-type: none;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-top: 1rem;
	margin: 0 auto;
}
.pamphlet ul.pam-col2 li {
	margin: 0 1.5rem;
}
.pamphlet ul.pam-col2 li a {
	background-color: #DA4150;
	color: #FFF;
	padding: 1.5rem 1.5rem 1.5rem 4rem;
	border-radius: 10px;
	text-align: left;
	position: relative;
	display: block;
	font-size: 1.25rem;
}
.pamphlet ul.pam-col2 li a::before {
	position: absolute;
	left: 12px;
	top: 22px;
	content: '';
	width: 36px;
	height: 40px;
	background-image: url(images/icon-pdf.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100%;
}
.tour-wrap .gallery-area {
	padding: 3rem 1rem 1rem 1rem;
}
body.archive .list-area {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
	justify-content: flex-start;
	max-width: 1300px;
	padding: 3rem 0 5rem 0;
}
body.archive .list-area article {
	width: calc(100% / 4);
	margin: 0 0 3rem 0;
	padding: 0 1rem;
	border-bottom: none;
}
body.archive .list-area article a {
	display: block;
	color: #000;
}
body.archive .list-area article a .thum {
	display: block;
	margin: 0 auto .5rem auto;
}
body.archive .list-area article a .date {
	display: inline-block;
	width: 100%;
}
body.page.about .photo-c3 {
	padding: 0 20px;
	position: relative;
	z-index: 4;
	width: 88%;
	margin: -50px auto 0 auto;
}
body.page.about .photo-c3 ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	padding: 0;
	list-style-type: none;
}
body.page.about .photo-c3 ul li {
	width: calc(100% / 3);
	margin: 0 0 .5rem 0;
	padding: 0;
	position: relative;
}
body.page.about .photo-c3 ul li img {
	width: 100%;
	height: auto;
}
body.page.about .photo-c3 ul li:nth-child(1) img {
	transform: rotate( -5deg );
	margin: -45px 0 0 6px;
}
body.page.about .photo-c3 ul li:nth-child(2) img {
	transform: rotate( 5deg );
	position: relative;
	z-index: 6;
	margin: 0 0 0 10px;
	scale: 1.1;
}
body.page.about .photo-c3 ul li:nth-child(3) img {
	transform: rotate( -5deg );
	margin: -45px 0 0 0;
}
body.page.about .photo-c3 ul li:nth-child(4) img {
	transform: rotate( 6deg );
	position: relative;
	z-index: 5;
	scale: 1.1;
	margin: -50px 0 0 -20px;
}
body.page.about .photo-c3 ul li:nth-child(5) img {
	transform: rotate( -8deg );
	margin: -15px 0 0 0;
}
body.page.about .photo-c3 ul li:nth-child(6) img {
	transform: rotate( 5deg );
	position: relative;
	z-index: 5;
	scale: 1.1;
	margin: -29px 0 0 13px;
}
body.page.about .white-box {
	width: 96%;
	margin: 0 auto 30px auto;
	background-color: #FFF;
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.35);
	padding: 2.5rem 2rem 7rem 2rem;
}
body.page.about .entry-content h2 {
	text-align: center;
	font-size: 2rem;
	padding: 2rem 1rem 3rem 1rem;
	position: relative;
	background-color: transparent;
	border: none;
}
body.page.about .entry-content h2 .fs-ss {
	font-size: 1.5rem;
}
body.page.about .entry-content h2::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 22px;
	height: 22px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	transform: rotate(135deg);
}
body.page.about .entry-content .white-box h3 {
	text-align: center;
	padding: 2rem 0 1.5rem 0;
	margin: 0 auto 1.5rem auto;
	position: relative;
	font-size: 1.375rem;
	border-left: none;
}
body.page.about .entry-content .white-box h3::before {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	content: '';
	width: 200px;
	height: 1px;
	background-color: #000;
}
body.page.about .plan-box {
	position: relative;
	z-index: 3;
	background-color: #F9F7EF;
	padding: 170px 20px 50px 20px;
	margin: -85px auto 0 auto;
}
body.page.about .plan-box p.tx-r {
	width: 96%;
	margin: .25px auto 0 auto;
	text-align: right;
	font-size: .9rem;
}
body.page.about .plan-box .list-box {
	margin: 0 auto;
	background-color: #FFF;
	outline: 1px solid #E2DFD3;
	outline-offset: -8px;
	padding: 1.25rem;
}
body.page.about ul.check-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	list-style-type: none;
	padding: 40px 0 0 0;
}
body.page.about ul.check-list li {
	margin: 0 2% .75rem 2%;
	width: 29.3333%;
	text-align: left;
	position: relative;
	padding: 0 0 10px 40px;
	font-size: 1rem;
	border-bottom: 2px dotted #B2B2B2;
}
body.page.about ul.check-list li::before {
	position: absolute;
	left: 6px;
	top: 4px;
	content: '';
	width: 20px;
	height: 17px;
	background-image: url(images/check-orange.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100%;
}
body.page.about .plan-box h4 {
	max-width: 360px;
	margin: -40px auto 0 auto;
	background-color: #EFCA60;
	font-size: 1.125rem;
	border-radius: 50vh;
	padding: 15px;
	outline: 1px solid #FFF;
	outline-offset: -3px;
	position: relative;
	z-index: 4;
	text-align: center;
}
body.page.about .plan-box h4::before {
	display: none;
}
.hissu {
	display: inline-block;
	padding: 2px 4px;
	background-color: #C00;
	color: #FFF;
	font-size: .8rem;
	margin-left: 1rem;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-ms-border-radius: 3px;
	border-radius: 3px;
	line-height: 1;
}
.form-area {
	max-width: 1240px;
	margin: 0 auto;
	padding: 1rem;
}
table.form,#wpcf7cpcnf table {
	border-width: 0 0 1px 0;
	margin-bottom: 2rem;
}
table.form th, table.form td,#wpcf7cpcnf table th,#wpcf7cpcnf table td {
	box-sizing: border-box;
	padding: 0.5rem 0.75rem;
	border-width: 1px 0 0 0;
}
table.form th,#wpcf7cpcnf table th {
	width: 25%;
	background: #F3F3F3;
}
#wpcf7cpcnf table th p,#wpcf7cpcnf table td p,table.form th p,table.form td p {
	padding-bottom: 0;
	margin-bottom: 0;
	width: 100%;
}
select, option {
	padding: 0.625em 0.4375em;	
}
.form-btn {
	margin: 0 auto 30px auto;
	text-align: center;
}
.form-btn p {
	text-align: center !important;
}
.form-btn input {
	min-width: 200px;
}
.form-btn input:hover {
	opacity: .6;
}
div.wpcf7cp-btns {
	text-align: center;
}
div.wpcf7cp-btns button,.form-btn input[type="submit"] {
	background: #000;
	padding: 1.25rem 2.5rem;
}
.form-btn input[type="submit"]:hover,.form-btn input[type="submit"]:focus {
	background: #000;
}
.site-title,.no-sidebar .entry-header, .no-sidebar .entry-content, .no-sidebar .entry-summary, .no-sidebar .entry-footer, .no-sidebar .comments-area, .no-sidebar .image-navigation, .no-sidebar .post-navigation, .no-sidebar .pagination, .no-sidebar .page-header, .no-sidebar .page-content, .no-sidebar .content-bottom-widgets,.post-navigation .post-title,input[type="submit"],input,textarea,::placeholder,.entry-title, .page-title {
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;

}
body.single-post .site-content {
	padding-bottom: 5rem;
}
table.c-info {
	width: 92%;
	margin: 0 auto 3rem auto;
	max-width: 960px;
	border: 1px solid #E2DFD3;
	border-width: 1px 0 0 0;
}
table.c-info th, table.c-info td {
	border: 1px solid #E2DFD3;
	border-width: 0 0 1px 0;
	padding: .75rem;
}
table.c-info th {
	width: 25%;
	font-weight: 500;
	background-color: #F9F7EF;
}
body.page.about .entry-content h2.company {
	text-align: center;
}
@media screen and (max-width:1024px){
	.pamphlet ul.pam-col2 {
		max-width: 480px;
	}
	.pamphlet ul.pam-col2 li {
		width: 100%;
		margin: 1rem 0;
	}
	body.page.about ul.check-list li {
		width: 46%;
	}
	table.form th, table.form td,#wpcf7cpcnf table th,#wpcf7cpcnf table td {
		display: block;
		width: 100%;
		padding: 1rem 0.5rem;
	}
	table.form td, #wpcf7cpcnf table td {
		border-width: 0;
	}
	table.c-info th, table.c-info td {
		display: block;
		width: 100%;
	}
}
@media screen and (max-width:768px){
	.tour-point h2 {
		font-size: 1.75rem;
	}
	.tour-info {
		padding: 2rem;
	}
	.tour-info h2 {
		font-size: 1.25rem;
	}
	.tour-wrap .gallery-area {
		padding: 0;
	}
	body.page.about .entry-content h2,body.page.about .entry-content .white-box h3,body.page.about .entry-content p.tx-c {
		text-align: left;
	}
	body.page.about .entry-content .white-box h3::before {
		width: 100%;
	}
    .entry-content h2 {
        font-size: 1.5rem;
    }
    .entry-content h3,.entry-content h4 {
        font-size: 1.25rem;
    }
    .entry-content h5 {
        font-size: 1.125rem;
    }
}
@media screen and (max-width:640px){
	.entry-title, .page-title {
		padding-top: .5rem;
	}
	.page-title::before, .entry-title::before {
		width: 25%;
	}
	.post-thumbnail {
		margin-top: .5rem;
	}
	body.no-sidebar:not(.search-results).single.single-tour article:not(.type-page) .entry-content {
		padding: 0 0 1rem 0;
	}
	.tour-point {
		padding: 1rem;
		margin-bottom: 2.5rem;
	}
	.tour-point .inner {
		padding: 1rem 1.5rem;
	}
	.tour-point p {
		line-height: 1.75;
		font-size: 1rem;
	}
	.tour-info {
		padding: 1rem 1.5rem;
		margin-bottom: 3.5rem;
	}
	.tour-info h2 {
		margin: 0 auto .5rem auto;
	}
	.tour-info h2:first-of-type {
		margin-top: 1rem;
	}
	.plan h2, .pamphlet h2 {
		padding: 1rem;
		margin-bottom: 1.25rem;
	}
	.plan h3 {
		font-size: 1.125rem;
	}
	.plan table:last-of-type {
		margin-bottom: 1rem;
	}
	.pamphlet ul.pam-col2 {
		padding: 0 3%;
		max-width: 360px;
	}
	.pamphlet ul.pam-col2 li a {
		padding: 1rem 1rem 1rem 3.25rem;
	}
	.pamphlet ul.pam-col2 li a::before {
		width: 25px;
		height: 28px;
		top: 20px;
	}
	body.archive .list-area {
		padding: 0 0 3rem 0;
	}
	body.archive .list-area article {
		width: calc(100% / 2);
		margin-bottom: 1.5rem;
		line-height: 1.5;
	}
	body.page.about ul.check-list li {
		width: 96%;
	}
	body.page.about .white-box {
		padding-bottom: 4rem;
	}
	body.page.about .entry-content h2 {
		padding-top: 0;
		font-size: 1.75rem;
        text-align: center;
	}
	.tour-wrap {
		word-break: auto-phrase;
	}
	.gallery-caption {
		word-break: break-all;
	}
    .tour-point h2 {
        font-size: 1.5rem;
    }
    .entry-content h2 {
        font-size: 1.375rem;
    }
    .entry-content h3,.entry-content h4 {
        font-size: 1.125rem;
    }
    .entry-content h5 {
        font-size: 1rem;
    }
}
/* 多言語調整 */
body.page.about .entry-content h2:lang(en) {
	text-align: left;
	max-width: 1020px;
	margin: 0 auto 2.5rem auto;
}
body.page.about .entry-content .white-box h3:lang(en) {
	text-align: left;
}
body.page.about .entry-content .white-box h3:lang(en)::before {
	width: 100%;
}
body.page.about .entry-content h2:lang(vi),body.page.about .entry-content h3:lang(vi) {
	text-align: left;
}
body.page.about .entry-content .white-box p.tx-c:lang(vi) {
	text-align: left;
}
body.page.about ul.check-list li:lang(vi) {
	width: 46%;
}
@media screen and (max-width:1024px){
	body.page.about .entry-content .white-box p.tx-c:lang(en) {
		text-align: left;
	}
}
@media screen and (max-width:768px){
	body.page.about ul.check-list li:lang(vi) {
		width: 96%;
	}
}