@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap');

/* common */
/* -------------------------------------------------------- */
html {font-size:62.5%;}
body {font-size:14px; font-size:1.4rem; font-family:Meiryo,MS PGothic,Osaka,arial,helvetica,sans-serif; color:#000; text-align:center; -webkit-text-size-adjust:100%; text-size-adjust:100%; background:none;}

h1, h2, h3, h4, h5, h6, h7 {line-height:1.2;}
p, li, dt, dd, th, td, address, blockquote, div {line-height:1.4;}

strong {font-weight:bold;}
ol {list-style-type:decimal; margin-left:2.2em;}
img {max-width:100%; width:auto; height:auto; line-height:0; vertical-align:top; border:0; display:inline;}

a {color:#004e97; text-decoration:underline; opacity:1;}
a:hover {color:#004e97; text-decoration:none; opacity:0.7;}
body.load a {transition:all 0.3s ease;}


/* decision */
/* -------------------------------------------------------- */
#bpCheck {display:none;}

body .pc {display:block;}
br.pc, span.pc, img.pc {display:inline;}
body .sp, br.sp, span.sp, img.sp {display:none;}

a.off {pointer-events:none; cursor:default; opacity:0.3;}
a.tel {pointer-events:none; cursor:default;}
body.mobile a.tel {pointer-events:auto; cursor:pointer;}

.cfix:before,
.cfix:after {display:table; content:" ";}
.cfix:after {clear:both;}

@media screen and (max-width:767px){
	#bpCheck {display:block;}

	body .pc, br.pc, span.pc, img.pc {display:none;}
	body .sp {display:block;}
	br.sp, span.sp, img.sp {display:inline;}
}


/* container */
/* -------------------------------------------------------- */
#container {width:100%; overflow:hidden;}


/* header */
/* -------------------------------------------------------- */
#header {width:100%; position:absolute; top:0; left:0; z-index:300;}
#header .sec {position:relative;}
#header .logo {width:290px; position:relative; top:10px;}

#gNav {position:absolute; top:58px; right:0;}
#gNav > ul.nav1 {display:flex;}
#gNav > ul.nav1 > li {padding:0 30px 0 0; box-sizing:border-box;}
#gNav > ul.nav2 {padding:10vh 3vw 10vh 0; box-sizing:border-box; position:fixed; top:0; right:-100%; z-index:301;}
#gNav > ul.nav2:before,
#gNav > ul.nav2:after {content:''; background-color:#a99622; display:block; position:absolute;}
#gNav > ul.nav2:before {width:100%; height:1px; bottom:9vh; right:0;}
#gNav > ul.nav2:after {width:1px; height:100%; bottom:0; right:3vw;}
#gNav > ul.nav2 > li {padding:2px 20px 2px 0;}
body.load #gNav > ul.nav2 {transition:all 0.6s 0s ease;}
body.move1 #gNav > ul.nav2 {right:0;}

#gNavBtn {width:26px; height:26px; position:fixed; top:10px; right:-40px; z-index:302; cursor:pointer; display:none; transition-property:opacity;}
#gNavBtn > span {width:100%; height:2px; margin:-1px 0 0 0; background-color:rgba(169,150,34,1); display:block; position:absolute; top:50%; left:0; transition-property:background-color;}
#gNavBtn > span:before,
#gNavBtn > span:after {content:''; width:100%; height:2px; background-color:rgba(169,150,34,1); display:block; position:absolute; left:0;}
#gNavBtn > span:before {top:-7px; transition-property:top;}
#gNavBtn > span:after {bottom:-7px; transition-property:bottom;}
body.load #gNavBtn {transition:all 0.3s 0s ease;}
body.load #gNavBtn > span,
body.load #gNavBtn > span:before,
body.load #gNavBtn > span:after {transition-duration:0.3s; transition-delay:0s; transition-timing-function:ease;}

#gNavCheck {display:none;}
#gNavCheck:checked + #header #gNavBtn > span {background-color:rgba(0,0,0,0);}
#gNavCheck:checked + #header #gNavBtn > span:before {top:0; transform:rotate(45deg); transition-property:transform;}
#gNavCheck:checked + #header #gNavBtn > span:after {bottom:0; transform:rotate(-45deg); transition-property:transform;}

@media screen and (max-width:1200px){
	#header .logo {width:23%;}
	#gNav > ul.nav1 > li img {height:20px;}
}
@media screen and (max-width:768px){
	#header .logo {width:100%; padding:68.6% 0 0 0; position:absolute; top:0; left:0;}
	#header .logo img {width:36%; position:absolute; top:62%; left:32%;}

	#gNav {width:100%; position:absolute; top:30px; right:0;}
	#gNav > ul.nav1 {display:flex; justify-content:center;}
	#gNav > ul.nav1 > li {padding:0 4vw;}
	#gNav > ul.nav1 > li img {height:auto;}
	#gNav > ul.nav2 > li {padding:20px 10px 0 0;}
	#gNav > ul.nav2 > li img {height:36px;}
	body.move1 #gNav > ul.nav2 {right:-100%;}

	#gNavBtn {width:60px; height:60px; right:-75px;}
	#gNavBtn > span {height:4px; margin:-2px 0 0 0;}
	#gNavBtn > span:before,
	#gNavBtn > span:after {height:4px;}
	#gNavBtn > span:before {top:-15px;}
	#gNavBtn > span:after {bottom:-15px;}
	#header #gNavBtn {display:block;}
	body.move1 #header #gNavBtn {right:30px;}
	#gNavCheck:checked + #header #gNav > ul.nav2 {right:0;}
}
@media screen and (max-width:640px){
	#header .logo img {width:22%; top:34%; left:39%;}
	#gNavBtn {width:26px; height:26px; right:-40px;}
	#gNavBtn > span {height:2px; margin:-1px 0 0 0;}
	#gNavBtn > span:before,
	#gNavBtn > span:after {height:2px;}
	#gNavBtn > span:before {top:-7px;}
	#gNavBtn > span:after {bottom:-7px;}
	body.move1 #header #gNavBtn {right:15px;}
	#gNav > ul.nav2 > li {padding:30px 10px 0 0;}
	#gNav > ul.nav2 > li img {height:24px;}
}


/* footer */
/* -------------------------------------------------------- */
#footer .inr1 {padding:40px 0; background-color:#383635;}
#footer .inr1 .txt1 {font-size:1.8rem; line-height:1.8; text-align:center; color:#a99622; margin:0 0 50px 0;}
#footer .inr1 .txt1 a {text-decoration:none; color:#a99622;}
#footer .inr1 .txt1 a:hover {text-decoration:underline; opacity:1;}
#footer .inr1 .copy {font-size:1.2rem; text-align:right; color:#a99622;}

@media screen and (max-width:767px){
	#footer .inr1 {padding:15px 0;}
	#footer .inr1 .txt1 {font-size:1.2rem; line-height:1.4; margin:0 0 10px 0;}
	#footer .inr1 .copy {font-size:50%; text-align:center;}
}


/* contents */
/* -------------------------------------------------------- */
#contents {}

.ttl01 {font-size:6.6rem; font-family:'Roboto',sans-serif; font-weight:900; margin:0 0 10px 0;}
.ttl01 .sub {font-size:2.2rem; font-family:Meiryo,MS PGothic,Osaka,arial,helvetica,sans-serif; font-weight:normal; line-height:1.4; margin:5px 0 0 0; display:block;}
.ttl02 {font-size:3.4rem; font-weight:normal; margin:0 0 20px 0; padding:0 0 0 1.2em; position:relative;}
.ttl02 .ico {position:absolute; top:0; left:0;}

.list01 {margin:0 -15px; display:flex; flex-wrap:wrap;}
.list01 > div {width:calc(100% / 4); padding:15px; box-sizing:border-box;}
.list01 > div a {text-decoration:none; color:#000; display:block;}
.list01 dl {margin:5px 0 0 0;}
.list01 dl dt {font-size:1.5rem; font-family:'Roboto',sans-serif; font-weight:900; margin:0 0 10px 0;}
.list01 dl dt > a {line-height:1.2; margin:0 0 5px 0;}
.list01 dl dt > a:hover {text-decoration:underline; opacity:1;}
.list01 dl dd {font-size:1.3rem; line-height:1.4; margin:0 0 15px 0;}
.list01 dl dd:last-of-type {margin-bottom:0;}

.sec {max-width:1890px; text-align:left; margin:0 auto; padding:0 30px; box-sizing:border-box;}

.sec1 {background:url(../img/2019/img_01.jpg) no-repeat center center; background-size:cover;}
.sec1 .sec {height:1210px; position:relative;}
.sec1 .txt1 {width:100%; text-align:center; padding:0 30px; box-sizing:border-box; position:absolute; bottom:112px; left:0;}

.sec2 {padding:0 0 80px 0;}
.sec2 .switchObj {position:relative;}
.sec2 .switchObj:before {content:''; width:100%; height:100%; background-color:#fff; display:block; position:absolute; top:0; left:200%; z-index:5;}
.sec2 .switchObj.move1:before {left:0; transition:left 0.6s ease;}
.sec2 .switchObj.move2:before {left:-100%; transition:left 0.6s ease;}
.sec2 .switchObj .obj {padding:50px 0 0 0; position:absolute; top:0; left:200%;}
.sec2 .switchObj .obj.on {position:static;}
.sec2 .inr1 {display:flex; justify-content:space-between;}
.sec2 .inr1 > div {box-sizing:border-box; z-index:1;}
.sec2 .inr1 > div.img {width:37%; position:relative;}
.sec2 .inr1 > div.img .tag {width:72%; position:absolute; top:20px; left:-10%;}
.sec2 .inr1 > div.ctx {width:63%; padding:0 0 40px 15px; position:relative;}
.sec2 .txt1 {list-style-type:disc; margin-left:1.5em;}
.sec2 .txt1 > li {font-size:1.6rem;}
.sec2 .txt2 {font-size:1.6rem;}
.sec2 .txt3 {font-size:1.8rem; position:absolute; bottom:0;}
.sec2 .txt3 a {text-decoration:none; color:#000;}
.sec2 .txt3 a:hover {text-decoration:underline; color:#000; opacity:1;}

.sec3 {padding:20px 0 30px 0; background-color:#383635;}
.sec3 .txt1 {font-size:2.4rem; color:#fff;}
.sec3 .txt2 {margin:0 -15px; display:flex; flex-wrap:wrap;}
.sec3 .txt2 > li {width:calc(100% / 4); padding:15px; box-sizing:border-box;}

.sec4 {padding:30px 0 15px 0;}
.sec4 .ttl02 {margin-bottom:0;}

.sec5 {background:url(../img/2019/img_05.jpg) no-repeat center center; background-size:cover;}
.sec5 .sec {height:1200px; position:relative;}
.sec5 .txt1 {width:100%; text-align:center; padding:0 30px; box-sizing:border-box; position:absolute; bottom:112px; left:0;}

.sec6 {padding:50px 0 10px 0;}

.sec7 {padding:0 0 30px 0;}
.sec7 .inr1 {display:flex; justify-content:space-between; align-items:center;}
.sec7 .inr1 > div.cell1 {width:67%;}
.sec7 .inr1 > div.cell2 {width:32%;}
.sec7 .txt1 > p {font-size:2.2rem; margin:0 0 30px 0;}
.sec7 .txt1 > p:last-of-type {margin-bottom:0;}

@media screen and (max-width:767px){
	.ttl01 {font-size:2.0rem; margin:0 0 10px 0;}
	.ttl01 .sub {font-size:1.0rem; line-height:1.4; margin:2px 0 0 0;}
	.ttl02 {font-size:1.4rem; margin:0 0 10px 0;}

	.list01 {margin:0 -9px;}
	.list01 > div {width:calc(100% / 2); margin:0 0 10px 0; padding:0 9px;}
	.list01 dl {margin:5px 0 0 0;}
	.list01 dl dt {font-size:1.2rem; margin:0 0 5px 0;}
	.list01 dl dt > a {margin:0 0 5px 0;}
	.list01 dl dd {font-size:1.0rem; line-height:1.4; margin:0 0 10px 0;}

	.sec {padding:0 15px;}

	.sec1 .txt1 {padding:0 15px; bottom:25px;}

	.sec2 {padding:0 0 20px 0;}
	.sec2 .switchObj .obj {padding:15px 0 0 0;}
	.sec2 .inr1 {display:block;}
	.sec2 .inr1 > div.img {width:auto; margin:0 0 5px 0; position:relative;}
	.sec2 .inr1 > div.img .tag {top:10px;}
	.sec2 .inr1 > div.ctx {width:auto; padding:0;}
	.sec2 .txt1 > li {font-size:1.0rem;}
	.sec2 .txt2 {font-size:1.0rem; margin:3px 0 0 0;}
	.sec2 .txt3 {font-size:1.2rem; margin:10px 0 0 0; position:static;}

	.sec3 {padding:5px 0;}
	.sec3 .txt1 {font-size:1.2rem; margin:0 0 5px 0;}
	.sec3 .txt2 {width:100%; margin:0; display:table; table-layout:fixed; border-spacing:0;}
	.sec3 .txt2 > li {width:auto; text-align:left; vertical-align:middle; padding:0; box-sizing:border-box; display:table-cell;}
	.sec3 .txt2 > li ul {width:100%; display:flex;}
	.sec3 .txt2 > li ul > li {width:calc(100% / 3); padding:0 3px; box-sizing:border-box;}
	.sec3 .txt2 > li ul > li a {display:block;}
	.sec3 .txt2 > li ul > li a:hover,
	.sec3 .txt2 > li ul > li a:hover img {opacity:1 !important;}
	.sec3 .slider {width:100%; margin:0 auto; padding:0 0 15px 0; -webkit-backface-visibility:hidden; backface-visibility:hidden; overflow:hidden;}
	.sec3 .slider .list {-webkit-overflow-scrolling:touch; overflow-scrolling:touch;}
	.sec3 .slider .pagination {width:100%; position:absolute; left:0; bottom:2px; display:flex; flex-wrap:wrap; justify-content:center;}
	.sec3 .slider .pagination a {width:5px; height:5px; font-size:1px; line-height:1; text-indent:-9999px; margin:0 2px; background:#9fa0a0; border-radius:50%; overflow:hidden; display:block;}
	.sec3 .slider .pagination a.on {background:#fff;}
	.sec3 .slider .pagination a:hover {opacity:1;}

	.sec4 {padding:15px 0 20px 0;}
	.sec4 .ttl02 {margin-bottom:5px;}

	.sec5 .sec {height:auto; padding:68.6% 0 0 0;}
	.sec5 .txt1 {padding:0 15px; bottom:25px;}

	.sec6 {padding:15px 0;}

	.sec7 {padding:0 0 15px 0;}
	.sec7 .inr1 {display:block; position:relative;}
	.sec7 .inr1 > div.cell1 {width:auto; position:relative; z-index:5;}
	.sec7 .inr1 > div.cell2 {width:100%; text-align:center; position:absolute; top:-15px; left:0; z-index:1;}
	.sec7 .inr1 > div.cell2 img {width:305px;}
	.sec7 .ttl02 {margin-bottom:170px;}
	.sec7 .txt1 > p {font-size:1.2rem; margin:0 0 15px 0;}
}
@media screen and (max-width:640px){
	.sec1 .sec {height:auto; padding:68.6% 0 0 0;}
}

