@charset "utf-8";

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 BASE 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

body { background-color: #f5f5f0; padding-bottom: 70px; }
#baseCtr { max-width: 1200px; background-color: #ffffff; padding-top: 50px; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) {
	#baseCtr { padding-top: 20px; padding-bottom: 20px; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 header 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

header { max-width: 1200px; }
header #headerTitle { background: url(../images/header_title1.jpg) no-repeat left top; background-size: 100% auto; font-size: 0; line-height: 0; padding-top: calc( 485 / 1200 * 100% ); }

@media screen and (max-width: 767px) {
	header { max-width: 500px; margin-right: auto; margin-left: auto; padding: 10px calc(15 / 320* 100%) 0; }
	header #headerTitle { background-image: url(../images/header_title2.jpg); padding-top: calc( 400 / 500 * 100% ); }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 main 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

main { font-size: 1.8rem; line-height: 3.8rem; font-feature-settings: "palt"; padding: 40px calc( 50 / 1100 * 100% ) 20px; }
main #mainInner { max-width: 900px; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) {
	main { font-size: 1.6rem; line-height: 2.8rem; padding: 20px calc( 15 / 320 * 100% ) 0; }
	main #mainInner { max-width: 500px; }
}



/* ――――――――――――――――――――――――――――――
［ mainCopy ］
―――――――――――――――――――――――――――――― */

.mainCopy { margin-bottom: 30px; }
.mainCopy .copyTxt { font-size: 7rem; line-height: 8.4rem; text-align: center; margin-bottom: 20px; }
.mainCopy .copyName { display: table; margin-right: auto; margin-left: auto; }
.mainCopy .copyName div { display: table-cell; vertical-align: middle; }
.mainCopy .copyName div:nth-child(1) { font-size: 1.6rem; line-height: 2.4rem; text-align: right; }
.mainCopy .copyName div:nth-child(2) { font-weight: 700; padding-left: 20px; }
.mainCopy .copyName div:nth-child(2) span:nth-child(1) { font-size: 3.4rem; line-height: 4rem; }
.mainCopy .copyName div:nth-child(2) span:nth-child(2) { font-size: 2rem; line-height: 4rem; }

@media screen and (max-width: 1000px) {
	.mainCopy .copyTxt { font-size: 6rem; line-height: 8rem; }
}

@media screen and (max-width: 767px) {
	.mainCopy { margin-bottom: 20px; }
	.mainCopy .copyTxt { font-size: 3rem; line-height: 4rem; }
	.mainCopy .copyName { display: block; }
	.mainCopy .copyName div { display: block; }
	.mainCopy .copyName div:nth-child(1) { font-size: 1.5rem; line-height: 2.2rem; text-align: center; margin-bottom: 5px; }
	.mainCopy .copyName div:nth-child(2) { text-align: center; padding-left: 0; }
	.mainCopy .copyName div:nth-child(2) span:nth-child(1) { font-size: 2.6rem; line-height: 3rem; }
	.mainCopy .copyName div:nth-child(2) span:nth-child(2) { font-size: 1.6rem; line-height: 3rem; }
}



/* ――――――――――――――――――――――――――――――
［ mainProfile ］
―――――――――――――――――――――――――――――― */

.mainProfile { display: table; margin-bottom: 90px; }
.mainProfile .profileInner { display: table-cell; width: 50%; vertical-align: middle; }
.mainProfile .profileInner:nth-child(1) { padding-right: 30px; }
.mainProfile .profileImg { display: table-cell; width: 160px; vertical-align: middle; }
.mainProfile .profileImg img { overflow: hidden; display: block; border-radius: 50%; }
.mainProfile .profileTxt { display: table-cell; vertical-align: middle; padding-left: 30px; }
.mainProfile .profileTxt div:nth-child(1) { font-size: 1.8rem; line-height: 3.4rem; color: #8c5a00; }
.mainProfile .profileTxt div:nth-child(2) { font-size: 1.8rem; line-height: 3.4rem; margin-bottom: 5px; }
.mainProfile .profileTxt div:nth-child(2) span { font-size: 1.6rem; line-height: 3.4rem; }
.mainProfile .profileTxt div:nth-child(3) { font-size: 1.6rem; line-height: 2.2rem; }

@media screen and (max-width: 1000px) {
	.mainProfile { display: block; }
	.mainProfile .profileInner { display: table; width: 450px; margin-right: auto; margin-left: auto; }
	.mainProfile .profileInner:nth-child(1) { padding-right: 0; margin-bottom: 40px; }
	.mainProfile .profileTxt { padding-right: 0; }
}

@media screen and (max-width: 767px) {
	.mainProfile { margin-bottom: 40px; }
	.mainProfile .profileInner { width: 340px; }
	.mainProfile .profileImg { width: 100px; }
	.mainProfile .profileTxt { padding-left: 15px; }
	.mainProfile .profileTxt div:nth-child(1) { font-size: 1.6rem; line-height: 2.8rem; }
	.mainProfile .profileTxt div:nth-child(2) { font-size: 1.6rem; line-height: 2.8rem; }
	.mainProfile .profileTxt div:nth-child(2) span { font-size: 1.4rem; line-height: 2.8rem; }
	.mainProfile .profileTxt div:nth-child(3) { font-size: 1.4rem; line-height: 2rem; }
}



/* ――――――――――――――――――――――――――――――
［ mainDis ］
―――――――――――――――――――――――――――――― */

.mainDis { margin-bottom: 80px; }
.mainDis .disLead { position: relative; font-size: 3.6rem; line-height: 5rem; text-align: center; padding-top: 36px; margin-bottom: 25px; }
.mainDis .disLead::after { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 10px; background: linear-gradient(90deg, #be8232, #e6d20f, #be8232); content: ""; }
.mainDis .disArticle { margin-bottom: 50px; }
.mainDis .disArticle .articleInner { display: table; }
.mainDis .disArticle .articleInner:not(:last-child) { margin-bottom: 10px; }
.mainDis .disArticle .articleName { display: table-cell; width: 60px; color: #8c5a00; vertical-align: top; }
.mainDis .disArticle .articleTxt { display: table-cell; vertical-align: top; }
.mainDis .disImg1 { max-width: 730px; margin-bottom: 80px; }
.mainDis .disImg2 { max-width: 720px; margin: 0 auto 80px; }
.mainDis .disImg3 { font-size: 0; line-height: 0; margin-bottom: 25px; }
.mainDis .disImg3 div { display: inline-block; width: calc((100% - 10px) / 2); }
.mainDis .disImg3 div:nth-child(even) { margin-left: 10px; }
.mainDis .disImg3 div:nth-child(n+3) { margin-top: 10px; }
.mainDis .disAfter { font-size: 1.6rem; line-height: 3.4rem; }

@media screen and (max-width: 767px) {
	.mainDis { margin-bottom: 60px; }
	.mainDis .disLead { font-size: 2.6rem; line-height: 3.6rem; padding-top: 26px; margin-bottom: 20px; }
	.mainDis .disLead::after { height: 5px; }
	.mainDis .disArticle { margin-bottom: 30px; }
	.mainDis .disArticle .articleName { width: 50px; }
	.mainDis .disImg3 div:nth-child(even) { margin-left: 6px; }
	.mainDis .disImg3 div:nth-child(n+3) { margin-top: 6px; }
	.mainDis .disAfter { font-size: 1.4rem; line-height: 2.4rem; }
}




/* ――――――――――――――――――――――――――――――
［ mainEnd ］
―――――――――――――――――――――――――――――― */

.mainEnd { position: relative; border: solid #8c5a00; border-width: 1px 0; padding: 35px 80px; }
.mainEnd::before,
.mainEnd::after { position: absolute; display: block; background-color: #8c5a00; width: 12px; height: 12px; content: ""; transform: rotate(45deg); }
.mainEnd::before { top: -6px; left: 0; }
.mainEnd::after { right: 0; bottom: -6px; }

@media screen and (max-width: 767px) {
	.mainEnd { padding: 25px 20px; }
}





/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
【 footer 】
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

footer { position: relative; padding: 140px calc( 50 / 1100 * 100% ) 100px; }
footer #pageTop { position: fixed; right: calc( 50% - 545px ); z-index: 10000; }
footer #pageTop a { position: relative; overflow: hidden; display: block; width: 40px; height: 40px; background-color: #999999; border-radius: 50%; font-size: 0; line-height: 0; margin-right: auto; margin-left: auto; }
footer #pageTop a::before,
footer #pageTop a::after { position: absolute; top: -4px; bottom: 0; display: block; width: 15px; height: 2px; background-color: #ffffff; content: ""; margin: auto; }
footer #pageTop a::before { right: 9px; left: 0; transform: rotate(-45deg); }
footer #pageTop a::after { right: 0; left: 9px; transform: rotate(45deg); }
footer #footerLink { font-size: 0; line-height: 0; }
footer #footerLink a { display: inline-block; font-size: 1.6rem; line-height: 2rem; text-decoration: none; }
footer #footerLink a:not(:last-child) { position: relative; padding-right: 20px; margin-right: 20px; }
footer #footerLink a:not(:last-child)::after { position: absolute; top: 0; right: 0; display: block; width: 1px; height: 20px; background-color: #000000; content: ""; }
footer #footerCopy { position: absolute; top: 140px; right: 0; font-size: 1.6rem; line-height: 2rem; text-align: right; margin-right: calc( 50 / 1100 * 100% ); }
footer #footerCopy span { font-weight: 700; }

@media screen and (max-width: 1200px) {
	footer #pageTop { right: calc( 55 / 1200 * 100% ); }
	footer #footerLink { text-align: center; margin-bottom: 30px; }
	footer #footerCopy { position: static; text-align: center; margin-right: 0; }
}

@media screen and (min-width: 821px) {
	footer #pageTop a { transition: 0.2s ease; }
	footer #pageTop a:hover { background-color: #000000; }
	footer #footerLink a:hover { text-decoration: underline; }
}

@media screen and (max-width: 767px) {
	footer { padding-top: 40px; padding-bottom: 40px; }
	footer #pageTop { position: static !important; margin-top: 0; margin-bottom: 30px; }
	footer #pageTop a::before,
	footer #pageTop a::after { top: -3px; }
	footer #footerLink { max-width: 500px; margin-right: auto; margin-left: auto; }
	footer #footerLink a { display: block; font-size: 1.5rem; }
	footer #footerLink a:not(:last-child) { padding-right: 0; padding-bottom: 12px; margin-right: 0; margin-bottom: 12px; }
	footer #footerLink a:not(:last-child)::after { top: auto; bottom: 0; width: 100%; height: 1px; background-color: #d1bf9f; }
	footer #footerCopy { font-size: 1.3rem; text-align: center; }
}
