@charset "UTF-8";
body { color: #000; font-family: 'Yu Gothic', '游ゴシック', YuGothic, '游ゴシック体', 'Hiragino Kaku Gothic ProN', Meiryo, 'MS PGothic', sans-serif; font-size: 14px; line-height: 1.5; background-color: #fff; /*font-weight: lighter; */ font-weight: 400; /*overflow: hidden;*/ }

.fontmin { font-family: "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; }

a { color: #ffffff; text-decoration: none; outline: none; }

a:hover { text-decoration: none; }

p { font-size: 14px; line-height: 26px; margin: 0px; text-align: justify; text-justify: inter-ideograph; }

p, h2, h3, h4 { font-feature-settings: "palt"; letter-spacing: 0.5px; }

.secin h2 { font-size: 20px; line-height: 2.5em; }

.secin p.lead2 { font-size: 16px; line-height: 1.7em; }

.secin p.lead span { font-size: 14px; line-height: 1.7em; margin-top: -1em; }

#w0 { -webkit-transition: 2s; -moz-transition: 2s; -o-transition: 2s; transition: 2s; opacity: 0; padding-top: 100px; }
@media screen and (max-width: 768px) { #w0 { padding-top: 58px; } }

.flbann { position: fixed; top: 140px; right: -200px; z-index: 77; width: 100%; max-width: 260px; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; pointer-events: none; }
@media screen and (max-width: 584px) { .flbann { top: 70px; max-width: 120px; } }
.flbann:hover { opacity: 0.7; }
.flbann img { display: block; vertical-align: bottom; width: 100%; }
.show1 .flbann { right: 10px; }
@media screen and (max-width: 584px) { .show1 .flbann { right: 10px; } }

.posfix .flbann { right: 10px; top: 40px; }
@media screen and (max-width: 584px) { .posfix .flbann { top: 60px; } }

.cambann0 { position: relative; box-sizing: border-box; padding-top: 40px; padding-bottom: 40px; }
@media screen and (max-width: 584px) { .cambann0 { padding-top: 0px; padding-left: 10px; padding-right: 10px; } }
.cambann0 .cambann { width: 100%; max-width: 940px; margin-left: auto; margin-right: auto; position: relative; }
@media screen and (max-width: 584px) { .cambann0 .cambann { margin-top: 0px; } }
.cambann0 .cambann a { display: block; width: 100%; height: 100%; position: relative; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
.cambann0 .cambann a:hover { opacity: 0.7; }
.cambann0 .cambann img { display: block; vertical-align: bottom; width: 100%; }

.pc #w0 { min-width: 1024px; }

#w0.show1 { opacity: 1; }

.secin p.lead { font-size: 14px; line-height: 34px; }

.load { width: 100%; height: 50px; position: absolute; left: 0%; top: 35%; z-index: 1000; }

.s1 .load { display: none; }

.loader { margin: 60px auto; font-size: 10px; position: relative; text-indent: -9999em; border-top: 5px solid rgba(149, 122, 57, 0.2); border-right: 5px solid rgba(149, 122, 57, 0.2); border-bottom: 5px solid rgba(149, 122, 57, 0.2); border-left: 5px solid #957A39; -webkit-transform: translateZ(0); -ms-transform: translateZ(0); transform: translateZ(0); -webkit-animation: load8 1.1s infinite linear; animation: load8 1.1s infinite linear; }

.loader, .loader:after { border-radius: 50%; width: 50px; height: 50px; }

@-webkit-keyframes load8 { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@keyframes load8 { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
.hmenu4 { text-align: center; height: 40px; width: 40px; cursor: pointer; position: fixed; right: -100px; bottom: 10px; z-index: 1111;   /*background-color:rgba(255,255,255,0.9);
*/ background-color: #FFEF1F; /*box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.3);*/ /*-webkit-box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.3);*/ /*-moz-box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.3);*/ -webkit-transition: 0.5s; -moz-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; /*border-radius:50%;*/ /*-moz-border-radius:50%;*/ /*-webkit-border-radius:50%;*/ /*-o-border-radius:50%;*/ /*-ms-border-radius:50%;*/ box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); -webkit-box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); opacity: 0.9; /*display: none;*/ }
.hmenu4 a { display: block; width: 100%; height: 100%; position: relative; z-index: 10; }
.hmenu4 a p { position: absolute; width: 100%; bottom: 1px; left: 5px; color: #000000; font-size: 10px; text-align: center; line-height: 10px; }
.hmenu4::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; z-index: 1; width: 16px; height: 16px; margin: auto; border-left: #000 solid 1px; border-top: #000 solid 1px; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.hmenu4::before { content: ""; position: absolute; left: 0; right: 0; top: 10px; z-index: 1; width: 20px; height: 1px; margin: auto; border-top: #000 solid 1px; }

.posfix .hmenu4 { right: 5px; }

header { width: 100%; position: fixed; left: 0; top: 0; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; z-index: 1000; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; border-bottom: 2px solid #FFF000; background-color: #fff; }
header .header { width: 95%; height: auto; padding-top: 20px; padding-bottom: 15px; box-sizing: border-box; margin-left: auto; margin-right: auto; position: relative; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
header nav { 
	position: relative; 
	box-sizing: border-box; 
	min-width: 840px; 
	max-width: 1000px; 
	margin-left: auto; 
	margin-right: auto;
	padding: 30px 0 23px 0
}
header nav ul { 
	width: 100%;
	box-sizing: border-box; 
	display: flex;
	flex-wrap: nowrap;
}
header nav ul li { 
	position: relative;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s; 
	transition: 0.3s; 
	width: 15%;
}
header nav ul li a { 
	text-align: center;
	display: block;
	width: 100%;
	height: 100%;
	position: relative; 
}
header nav ul li a::after {
	width: 1px;
	height: 20px;
	content: "";
	background-color: #B3B3B4;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(45deg);
	-moz-transform: translateY(-50%) rotate(45deg);
	-ms-transform: translateY(-50%) rotate(45deg);
	/*transform: translateY(-50%) rotate(45deg);*/
	transform: translateY(-50%) ;
	zoom: 1; -webkit-text-fill-color: transparent; 
}


header nav ul li a p { color: #000; font-size: 12px; font-weight: 400; width: 100%; left: 0; top: 50%; text-align: center; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); position: absolute; font-feature-settings: "pwid"; letter-spacing: 1px; line-height: 1.4em; }
header nav ul li a p span{
	background-color: #ffd4ec;
    padding: 3px 10px 1px 10px;
    line-height: 1.5;
}
header nav ul li::after { width: 0px; height: 4px; content: ""; background-color: #B5B5B6; position: absolute; left: 50%; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); bottom: -23px; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
header nav ul li.act::after, header nav ul li:hover::after { width: 80%; }

/*header nav ul li.act:last-child::after, 
header nav ul li:last-child:hover::after {
	width: 0%; 
}*/
@media screen and (max-width: 768px) {
	header nav ul { 
		width: 100%;
		box-sizing: border-box; 
		display: flex;
		flex-wrap: nowrap;
		flex-direction: column;
	}
	header nav .nav::after { 
		display: none; 
	}
  header nav ul li {
	  height: 40px; 
	  border-bottom: 1px solid #ddd;
	  width: 100% !important;
	  margin-bottom: 5px; 
	}
  header nav ul li a::after { 
	  display: none; 
	}
  header nav ul li a p {
	  text-align: left;
	  line-height: 1.5em;
	  padding-left: 30px;
	}
  header nav ul li a p::after {
	  content: "";
	  position: absolute;
	  left: 10px;
	  top: 5px;
	  z-index: 1;
	  width: 6px;
	  height: 6px;
	  margin: auto;
	  border-top: #111111 solid 1px;
	  border-right: #111111 solid 1px;
	  -webkit-transform: rotate(45deg);
	  transform: rotate(45deg);
	} 

	header nav ul li:nth-of-type(8) a p::after{
		border-top: #fff solid 1px;
		border-right: #fff solid 1px;
	}
	header nav ul li::after {
		width: 0px;
		height: 4px;
		content: "";
		background-color: #B5B5B6;
		position: absolute;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		bottom: 0px;
		-webkit-transition: 0.3s;
		-moz-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s; 
	}

	header nav ul li.act::after,
	header nav ul li:hover::after {
		width: 87%; 
	} 
	/*header nav ul li.act:last-child::after, 
	header nav ul li:last-child:hover::after {
		width: 40%; 
	}*/
}

header nav .navd { width: 16%; float: left; box-sizing: border-box; position: relative; }
header nav .navd ul li { width: 100%; height: 30px; border: 2px solid #000 !important; }
header nav .navd ul li::after { display: none; }
/*header nav .navd ul li::before { content: ""; position: absolute; width: 63px; height: 26px; right: 0; top: -30px; background-size: 100%; background-position: center top; background-image: url("../images/oath/ico_01.png"); }*/
header nav .navd ul li a p { color: #000; font-size: 11px;}
header nav .navd ul li a p:first-child{
  width: 48%;
}
header nav .navd ul li a p:last-child{
  width: 52%;
  left: auto;
  right: 0;
  color: #fff;
  background-color: #000;
}
header nav .navd ul li a::after { display: none; }
@media screen and (max-width: 768px) { header nav .navd { width: 100%; float: none; }
  header nav .navd::after { display: none; }
  header nav .navd ul li { height: 40px; border: 2px solid rgba(232, 82, 152, 0) !important; width: 100% !important;  margin-bottom: 5px; }
  header nav .navd ul li a p { text-align: left; line-height: 1.5em; padding-left: 30px; font-size: 12px;}
  header nav .navd ul li a p::after { content: ""; position: absolute; left: 10px; top: 5px; z-index: 1; width: 6px; height: 6px; margin: auto; border-top: #111111 solid 1px; border-right: #111111 solid 1px; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
  header nav .navd ul li a::after { width: 20px; height: 2px; content: ""; background-color: #FFEE2E; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
  /*header nav .navd ul li::before { content: ""; position: absolute; width: 81px; height: 24px; right: 10px; top: 5px; background-size: auto 100%; background-position: center top; background-image: url(../images/oath/ico_01_b.png); } */
  header nav .navd ul li a p:last-child{width: 39%;}
  }
header nav .nava { width: 8%; float: left; margin-right: 1%; box-sizing: border-box; padding-bottom: 1%; }
header nav .nava ul li { width: 100%; height: 30px; }
header nav .nava ul li a::after { display: none; }
@media screen and (max-width: 768px) { header nav .nava { width: 100%; float: none; }
  header nav .nava ul li { height: 40px; border-bottom: 1px solid #ddd; width: 100% !important; margin-bottom: 5px; }
  header nav .nava ul li a p { text-align: left; line-height: 1.5em; padding-left: 30px; }
  header nav .nava ul li a p::after { content: ""; position: absolute; left: 10px; top: 5px; z-index: 1; width: 6px; height: 6px; margin: auto; border-top: #111111 solid 1px; border-right: #111111 solid 1px; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
  header nav .nava ul li a::after { width: 20px; height: 2px; content: ""; background-color: #FFEE2E; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } }
header nav .navb { width: 36%; float: left; margin-right: 1%; box-sizing: border-box; position: relative; padding-bottom: 1%;}
header nav .navb::after { width: 1px; height: 70%; content: ""; background-color: #B3B3B4; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
header nav .navb ul li { width: 40%; height: 30px; }
header nav .navb ul li:last-child a::after { display: none; }
header nav .navb ul li:nth-child(2) { width: 60%; }
@media screen and (max-width: 768px) { header nav .navb { margin-top: 0px; width: 100%; float: none; }
  header nav .navb::after { display: none; }
  header nav .navb ul li { height: 40px; border-bottom: 1px solid #ddd; width: 100% !important; margin-bottom: 5px; }
  header nav .navb ul li a::after { display: none; }
  header nav .navb ul li a p { text-align: left; line-height: 1.5em; padding-left: 30px; }
  header nav .navb ul li a p::after { content: ""; position: absolute; left: 10px; top: 5px; z-index: 1; width: 6px; height: 6px; margin: auto; border-top: #111111 solid 1px; border-right: #111111 solid 1px; -webkit-transform: rotate(45deg); transform: rotate(45deg); } }
header nav .navc { width: 54%; float: left; position: relative; padding-bottom: 1%; }
header nav .navc::after { width: 1px; height: 70%; content: ""; background-color: #B3B3B4; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
header nav .navc ul li { width: 35%; height: 30px; }
header nav .navc ul li:last-child { width: 28%; }
header nav .navc ul li:last-child a::after { display: none; }

@media screen and (max-width: 768px) { header nav .navc { margin-top: 0px; width: 100%; float: none; }
  header nav .navc::after { display: none; }
  header nav .navc ul li { width: 100% !important; margin-bottom: 5px; height: 40px; border-bottom: 1px solid #ddd; }
  header nav .navc ul li a p { text-align: left; line-height: 1.5em; padding-left: 30px; }
  header nav .navc ul li a p::after { content: ""; position: absolute; left: 10px; top: 5px; z-index: 1; width: 6px; height: 6px; margin: auto; border-top: #111111 solid 1px; border-right: #111111 solid 1px; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
  header nav .navc ul li a::after { display: none; } }
header nav .navt { text-align: center; font-size: 14px; line-height: 13px; width: 100%; font-weight: 400; box-sizing: border-box; }
@media screen and (max-width: 768px) { header nav .navt { text-align: left; line-height: 40px; padding-left: 24px; position: relative; height: 40px; }
  header nav .navt::after { width: 20px; height: 2px; content: ""; background-color: #FFEE2E; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } }
@media screen and (max-width: 768px) { header nav { min-width: 100%; } }
header h1 { margin: 0; padding: 0; width: 100%; display: inline-block; }
header .logo { position: relative; max-width: 400px; margin-left: auto; margin-right: auto; }
header .logo a { display: block; width: 100%; height: 100%; position: relative; }
header .logo img { display: block; vertical-align: bottom; width: 100%; }
@media screen and (max-width: 768px) { header .logo { padding-left: 20px; max-width: 240px; margin-left: 0; } }
@media screen and (max-width: 768px) { header { border-bottom: none; }
  header nav { padding: 15px; padding-top: 64px; box-sizing: border-box; position: absolute; width: 100%; z-index: 10; left: 0; top: -400px; -webkit-transition: 0.3s 0.1s; -moz-transition: 0.3s 0.1s; -o-transition: 0.3s 0.1s; transition: 0.3s 0.1s; }
  header.act nav { top: 0; }
  header::before { content: ""; position: fixed; width: 100%; height: 0; left: 0; top: 0; z-index: 10; background-color: white; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
  header.act::before { height: 100vh; }
  header .header { width: 100%; z-index: 11; background-color: #fff; border-bottom: 2px solid #FFF000; }
  header.act .header { border-bottom: none; } }

/*#index .sec1 .s1 li:nth-child(1)::after{*/
/*position: absolute;*/
/*content: "comming soon.";*/
/*left: 50%;*/
/*top: 50%;*/
/*-webkit-transform: translateX(-50%) translateY(-50%);*/
/*-moz-transform: translateX(-50%) translateY(-50%);*/
/*-ms-transform: translateX(-50%) translateY(-50%);*/
/*transform: translateX(-50%) translateY(-50%);*/
/*color: rgba(255,239,31,1);*/
/*z-index: 10;*/
/*font-size: 14px;*/
/*text-shadow:0px 0px 1px rgba(0,0,0,0.3),*/
/*0px 0px 2px rgba(0,0,0,0.3),*/
/*0px 0px 3px rgba(0,0,0,0.3),*/
/*0px 0px 4px rgba(0,0,0,0.3),*/
/*0px 0px 5px rgba(0,0,0,0.3),*/
/*0px 0px 6px rgba(0,0,0,0.3),*/
/*0px 0px 12px rgba(0,0,0,0.3);*/
/*}*/
.posfix.pc header { top: -38px; box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); -webkit-box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); }

.posfix.pc header .header { padding-top: 5px; padding-bottom: 0px; }

.posfix.pc header .header .hnav { top: 5px; }





header nav ul li:nth-of-type(7)::before,
header nav ul li:nth-of-type(8)::before {
	-webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    padding: 2px 0 0px;
    content: "";
    position: absolute;
	background-image: url("../images/common/new.svg");
	background-repeat: no-repeat;
	background-size: contain;
    top: -30px;
    left: 39px;
    width: 47px;
    height: 40px;
}
.posfix header nav ul li::before {
	top: -30px;
}
header nav ul li:nth-of-type(8) p{
	color: #fff;
}
header nav ul li:nth-of-type(8) p::before {
	content: "";
	width: 114px;
	height: 32px;
	position: absolute;
	top: -8px;
	left: 5px;
	z-index: -1;
	background-color: #ffb3dd;
}




@media screen and (max-width: 768px){
	header nav ul li:nth-of-type(7)::before,
	header nav ul li:nth-of-type(8)::before {
	    padding: 3px 0 1px;
	    content: "";
	    font-size: 11px;
	    top: 10px;
	    left: auto;
	    right: 23px;
		width: 65px;
		z-index: 1;
	}
	.posfix header nav ul li::before {
		top: 10px;
	}

	header nav ul li:nth-of-type(8) p::before {
		width: 100%;
		height: 44px;
		position: absolute;
		top: -16px;
		left: 0;
		z-index: -1;
	}


}











section { position: relative; box-sizing: border-box; overflow: hidden; }
section .secin { position: relative; box-sizing: border-box; width: 100%; max-width: 1024px; padding-left: 10px; padding-right: 10px; padding-top: 40px; padding-bottom: 40px; box-sizing: border-box; margin-left: auto; margin-right: auto; }
section .secin .rbtn1 { box-sizing: border-box; width: 100%; max-width: 500px; border: 1px solid #ffffff; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; margin-left: auto; margin-right: auto; margin-bottom: 10px; box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); -webkit-box-shadow: 0 0px 6px 0px rgba(0, 0, 0, 0.3); }
section .secin .rbtn1:hover { opacity: 0.7; }
section .secin .rbtn1 a { display: block; width: 100%; height: 100%; position: relative; color: #ffffff; font-size: 22px; text-align: center; line-height: 1em; padding-top: 16px; padding-bottom: 16px; }
section .secin .rbtn1 a span { font-size: 14px; line-height: 1.5em; margin-top: 10px; display: block; }
section .secin .rbtnset { text-align: center; width: 100%; max-width: 640px; margin-left: auto; margin-right: auto; margin-top: 30px; }
section .secin .rbtnset li { width: 40%; margin-right: 2%; position: relative; display: inline-block; }
section .secin .rbtnset li:last-child { width: 40%; margin-right: 0; margin-left: 2%; }
section .secin .rbtnset li a { font-size: 16px; }
@media screen and (max-width: 584px) { section .secin { padding-top: 20px; padding-bottom: 20px; }
  section .secin h2 { margin-top: 0; }
  section .secin h2 img { max-width: 260px; } }

section.mainimg::after { content: ""; position: absolute; width: 100%; /*max-width: 1000px;*/ height: 110%; left: 50%; top: 0; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); background-size: cover; background-position: center top; background-image: url("../images/top/main_01.png"); z-index: 1; opacity: 1; }

section.mainimg .secin { padding-left: 0px; padding-right: 0px; max-width: 100%; z-index: 3; }

section.mainimg .secin .mimgc { width: 100%; max-width: 540px; margin-bottom: 80px; margin-top: 160px; margin-left: auto; margin-right: auto; }

section.mainimg .secin .mimgc img { display: block; vertical-align: bottom; width: 100%; }

section.mainimg .secin .mimgc2 { width: 100%; background-color: #fff; margin-top: 40px; margin-bottom: 40px; box-sizing: border-box; padding-top: 20px; padding-bottom: 20px; }

section.mainimg .secin .mimgc2 img { display: block; vertical-align: bottom; width: 100%; max-width: 360px; margin-left: auto; margin-right: auto; }

section.mainimg .secin p.lead { font-size: 18px; font-weight: 700; letter-spacing: 0.2em; color: #000; text-shadow: 0px 0px 10px rgba(255, 255, 255, 0.5); }

section.sec1 .secin .cpnl { text-align: center; font-size: 0; width: 100%; max-width: 960px; margin-left: auto; margin-right: auto; }
section.sec1 .secin .cpnl li { display: inline-block; width: 48%; margin-left: 1%; margin-right: 1%; font-size: 14px; }
section.sec1 .secin .cpnl li .ctit { height: 120px; width: 100%; position: relative; overflow: hidden; }
section.sec1 .secin .cpnl li .ctit h2 { position: absolute; margin: 0; left: 50%; top: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); font-weight: 400; z-index: 3; }
section.sec1 .secin .cpnl li .ctit h2 img { display: block; vertical-align: bottom; width: 100%; max-width: 240px; margin-left: auto; margin-right: auto; margin-bottom: 10px; }
section.sec1 .secin .cpnl li .ctit h2 p { text-align: center; color: #FFF100; position: relative; padding-top: 10px; font-size: 16px; }
section.sec1 .secin .cpnl li .ctit h2 p::after { height: 1px; width: 60%; content: ""; background-color: #FFF100; position: absolute; left: 50%; top: 0; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); }
section.sec1 .secin .cpnl li .ctit::before { content: ""; position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 1; background-size: cover; background-position: center center; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
section.sec1 .secin .cpnl li .ctit::after { content: ""; position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 2; background-size: cover; background-position: center center; background-image: url("../images/top/bg_01.png"); opacity: 0.5; }
section.sec1 .secin .cpnl li:hover .ctit::before { transform: scale(1.1, 1.1); -moz-transform: scale(1.1, 1.1); -webkit-transform: scale(1.1, 1.1); -o-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); }
section.sec1 .secin .cpnl li .clink { height: auto; width: 100%; position: relative; overflow: hidden; background-color: #FFF000; }
section.sec1 .secin .cpnl li .clink ul { position: relative; box-sizing: border-box; padding: 20px; }
section.sec1 .secin .cpnl li .clink ul li { position: relative; box-sizing: border-box; width: 48%; margin-right: 2%; margin-left: 0; float: left; height: 100px; background-color: #fff; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
section.sec1 .secin .cpnl li .clink ul li:hover { opacity: 0.7; }
section.sec1 .secin .cpnl li .clink ul li:nth-child(2) { margin-right: 0; }
section.sec1 .secin .cpnl li .clink ul li a { color: #000; position: absolute; width: 100%; height: 100%; left: 0; top: 0; }
section.sec1 .secin .cpnl li .clink ul li a p { text-align: center; line-height: 1.5em; position: absolute; left: 0; width: 100%; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
section.sec1 .secin .cpnl li .clink ul li::after { content: ""; position: absolute; top: 2px; right: 2px; width: 0; height: 0; border-style: solid; border-width: 0 0 16px 16px; border-color: transparent transparent #FFF000 transparent; -webkit-transform: rotate(-90deg); transform: rotate(-90deg); }
section.sec1 .secin .cpnl li .clink ul li span { font-size: 11px; font-feature-settings: "pwid"; letter-spacing: 0.5px; }
section.sec1 .secin .cpnl li.s2 ul li::after { content: ""; position: absolute; top: 2px; right: auto; left: 2px; width: 0; height: 0; border-style: solid; border-width: 0 16px 16px 0; border-color: transparent transparent #FFF000 transparent; -webkit-transform: rotate(90deg); transform: rotate(90deg); }

section.sec1 .secin .cpnl li.s1 .ctit::before { background-image: url("../images/top/cpnl_01.png"); }

section.sec1 .secin .cpnl li.s2 .ctit::before { background-image: url("../images/top/cpnl_02.png"); }

section.sec1 .secin .cpnl li.s2 .clink ul li { /*width: 32%;*/ width: 48%; }

section.sec1 .secin .cpnl li.s2 .clink ul li:nth-child(2) { margin-right: 2%; }

section.sec1 .secin .cpnl li.s2 .clink ul li:nth-child(3) { margin-right: 0; margin-left: 0; }

.hmenu3 { text-align: center; display: none; height: 46px; width: 37px; cursor: pointer; position: absolute; right: 10px; top: 10px; z-index: 21; /*box-shadow: 0px 6px 3px 0px rgba(0,0,0,0.5);
-webkit-box-shadow: 0px 6px 3px 0px rgba(0,0,0,0.5);
-moz-box-shadow: 0px 6px 3px 0px rgba(0,0,0,0.5);*/ /*border: 1px double #B7B7B7;*/ -webkit-transition: 0.5s; -moz-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.hmenu3 div { height: 30px; width: 100%; position: relative; }
.hmenu3 span { display: block; background: #595757; width: 32px; height: 2px; position: absolute; left: 2px; transition: all 0.4s; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; }
.hmenu3 span:first-child { top: 8px; }
.hmenu3 span:nth-child(2) { margin-top: -1px; top: 50%; }
.hmenu3 span:last-child { bottom: 9px; }
.hmenu3 p { margin-top: 2px; color: #595757; width: 100%; position: relative; /*left:0px;*/ /*top: 22px;*/ font-size: 10px; line-height: 12px; text-align: center; z-index: -1; }
.hmenu3.active span:first-child { -webkit-transform: translateY(4px) rotate(45deg); -moz-transform: translateY(4px) rotate(45deg); -ms-transform: translateY(4px) rotate(45deg); transform: translateY(4px) rotate(45deg); }
.hmenu3.active span:nth-child(2) { -webkit-transform: translateY(-2px) rotate(-45deg); -moz-transform: translateY(-2px) rotate(-45deg); -ms-transform: translateY(-2px) rotate(-45deg); transform: translateY(-2px) rotate(-45deg); }
.hmenu3 img { width: 100%; box-shadow: 0px 6px 3px 0px rgba(0, 0, 0, 0.5); -webkit-box-shadow: 0px 6px 3px 0px rgba(0, 0, 0, 0.5); -moz-box-shadow: 0px 6px 3px 0px rgba(0, 0, 0, 0.5); }
@media screen and (max-width: 768px) { .hmenu3 { display: block; } }

.thim, .thim2, .thim4, .thim3 { opacity: 0; -webkit-transform: translateY(10%); -moz-transform: translateY(10%); -ms-transform: translateY(10%); transform: translateY(10%); }

.thim.thimu, .thim2.thimu, .thim4.thimu, .thim3.thimu { opacity: 0; -webkit-transform: translateY(-10%); -moz-transform: translateY(-10%); -ms-transform: translateY(-10%); transform: translateY(-10%); }

.thim.ani1 { opacity: 1; -webkit-transition: all 0.8s 0.25s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0.8s 0.25s cubic-bezier(0.22, 0.61, 0.36, 1); -webkit-transform: translateX(0%); -moz-transform: translateX(0%); -ms-transform: translateX(0%); transform: translateX(0%); }

.thim2.ani1 { opacity: 1; -webkit-transition: all 0.8s 0.3s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0.8s 0.3s cubic-bezier(0.22, 0.61, 0.36, 1); -webkit-transform: translateY(0%); -moz-transform: translateY(0%); -ms-transform: translateY(0%); transform: translateY(0%); }

.thim3.ani1 { opacity: 1; -webkit-transition: all 0.8s 0.35s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0.8s 0.35s cubic-bezier(0.22, 0.61, 0.36, 1); -webkit-transform: translateX(0%); -moz-transform: translateX(0%); -ms-transform: translateX(0%); transform: translateX(0%); }

.thim4.ani1 { opacity: 1; -webkit-transition: all 0.8s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0.8s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1); -webkit-transform: translateX(0%); -moz-transform: translateX(0%); -ms-transform: translateX(0%); transform: translateX(0%); }

.thim.ani1.ani1fin, .thim2.ani1.ani1fin, .thim4.ani1.ani1fin, .thim3.ani1.ani1fin { opacity: 1; -webkit-transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1); }

.sup { font-size: 10px; font-weight: 400; vertical-align: super; }

table { width: 100%; margin-left: auto; margin-right: auto; /*border: 1px solid #cccccc;*/ margin-bottom: 25px; font-size: 13px; border-top: 1px solid #cccccc; }
table p { color: #000000; }
table tr th { font-weight: normal; padding-top: 10px; padding-right: 6px; padding-left: 6px; padding-bottom: 10px; color: #000000; text-align: left; width: 200px; background-color: #F5F3F0; border-bottom: 1px solid #cccccc; }
table tr td { color: #333333; background-color: #ffffff; box-sizing: border-box; padding-top: 10px; padding-right: 6px; padding-left: 6px; padding-bottom: 10px; border-bottom: 1px solid #cccccc; }
table tr td b { color: #FFF; background-color: #af9165; width: 100%; display: block; }

.pagetit h2 { position: relative; text-align: center; }
.pagetit h2 img { width: 100%; max-width: 400px; }
.pagetit h2 p { font-size: 30px; font-weight: 700; color: #DC4F1D; text-align: center; position: relative; padding-top: 20px; }
.pagetit h2 p::after { width: 40%; height: 1px; content: ""; background-color: #231815; position: absolute; left: 50%; top: 0; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); }
.pagetit .mainimg { position: relative; }
.pagetit .mainimg img { display: block; vertical-align: bottom; width: 100%; }

@media screen and (max-width: 768px) { #g-footer .footer-nav { width: 100%; margin-left: 0px; }
  #g-footer .footer-nav, #g-footer .footer-info { margin-bottom: 0px; }
  #g-footer .footer-info { margin-right: 0px; width: 100%; }
  #g-footer .footer-info ul { width: 100%; height: auto; border-left: none; padding-left: 10px; margin-top: 0px; margin-right: 0; margin-left: 0px; margin-bottom: 30px; box-sizing: border-box; font-size: 0px; border-top: 1px solid #cccccc; }
  #g-footer .footer-info ul li { width: 33.33%; font-size: 10px; display: inline-block; margin-top: 4px; margin-bottom: 4px; }
  #g-footer ul li { font-size: 10px; }
  #g-footer .footer-nav .nav-1, #g-footer .footer-nav .nav-2 { margin-top: 20px; }
  #g-footer .footer-nav .nav-3, #g-footer .footer-nav .nav-4 { margin-top: 22px; }
  ._sp760 { display: block !important; }
  ._pc760 { display: none !important; } }
@media screen and (max-width: 640px) { ._sp640 { display: block; }
  ._pc640 { display: none; } }
@media screen and (max-width: 584px) { .fig3 { max-width: 280px; }
  .pagetit .mainimg p.lead span { width: 140px; position: absolute; right: 20px; bottom: -70px; }
  .pagetit h2 p { font-size: 20px; padding-top: 15px; }
  section.mainimg::after { background-image: url("../images/top/main_01@sp.png"); }
  section.mainimg .secin { padding-left: 0px; padding-right: 0px; padding-bottom: 15px; }
  section.mainimg .secin .mimgc2 { width: 100%; background-color: #fff; margin-top: 20px; margin-bottom: 20px; box-sizing: border-box; padding-top: 15px; padding-bottom: 15px; padding-left: 30px; padding-right: 30px; }
  section.mainimg .secin .mimgc { width: 100%; max-width: 320px; margin-left: auto; margin-right: auto; margin-top: 200px; margin-bottom: 20px; }
  section.mainimg .secin p.lead { font-size: 15px; letter-spacing: 0em; /*color: #ffffff;*/ /*text-shadow: 0px 0px 10px rgba(0,0,0,0.9);*/ }
  section.sec1 .secin .cpnl li { display: inline-block; width: 100%; margin-left: 0; margin-right: 0; margin-bottom: 10px; }
  section.sec1 .secin .cpnl li p { font-size: 12px; }
  section.sec1 .secin .cpnl li ul li { margin-bottom: 0px; }
  section.sec1 .secin .cpnl li .clink ul { padding: 13px; }
  section.sec1 .secin .cpnl li .clink ul li { height: 80px; }
  #g-footer .footer-nav, #g-footer .footer-info { box-sizing: border-box; padding-top: 10px; padding-right: 10px; padding-bottom: 0px; padding-left: 10px; }
  #g-footer .footer-nav .nav-1 { margin-top: 10px; padding-top: 10px; margin-left: 0px; width: 100%; border-top: 1px solid #cccccc; }
  #g-footer .footer-info ul li { width: 50%; }
  #g-footer .footer-nav .nav-1 ul { font-size: 0px; }
  #g-footer .footer-nav .nav-1 li { font-size: 10px; width: 50%; display: inline-block; }
  #g-footer .home { margin-bottom: 0px; }
  #g-footer .footer-nav .nav-3 .sub { margin: 0 0 10px; }
  #g-footer .footer-nav .nav-1 .sub li, #g-footer .footer-nav .nav-2 .sub li, #g-footer .footer-nav .nav-3 .sub li, #g-footer .footer-nav .nav-4 .sub li { margin: 4px 0 0px; }
  #g-footer .footer-nav .nav-2 { margin-top: 10px; padding-top: 10px; margin-left: 0px; width: 100%; border-top: 1px solid #cccccc; }
  #g-footer .footer-nav .nav-2 ul li ul { font-size: 0px; }
  #g-footer .footer-nav .nav-2 ul li ul li { font-size: 10px; width: 50%; display: inline-block; }
  #g-footer .footer-nav .nav-3 { margin-top: 10px; padding-top: 10px; margin-left: 0px; width: 100%; border-top: 1px solid #cccccc; }
  #g-footer .footer-nav .nav-3 ul li ul { font-size: 0px; }
  #g-footer .footer-nav .nav-3 ul li ul li { font-size: 10px; width: 50%; display: inline-block; }
  #g-footer .footer-nav .nav-4 { font-size: 0px; }
  #g-footer .footer-nav .nav-4 li { vertical-align: top; margin-bottom: 5px; font-size: 10px; width: 50%; display: inline-block; }
  #g-footer .footer-nav .nav-4 { margin-top: 0px; padding-top: 10px; margin-left: 0px; width: 100%; border-top: 1px solid #cccccc; }
  #g-footer .footer-nav .nav-4 ul li ul { font-size: 0px; }
  #g-footer .footer-nav .nav-4 ul li ul li { font-size: 10px; width: 50%; display: inline-block; }
  #g-footer .footer-info ul { padding-left: 0px; }
  #g-footer .copyright .small { color: #888; margin: 0px; text-align: center; width: 100%; }
  #g-footer .copyright .company { margin-right: 0px; text-align: center; width: 100%; }
  #g-footer .copyright { text-align: center; }
  #g-footer .footer_alert { color: #888; font-size: 10px; line-height: 12px; max-width: 1000px; margin: 30px auto 0; box-sizing: border-box; padding-left: 6px; padding-right: 6px; }
  .mb100 { margin-bottom: 50px; }
  ._sp, ._sp560 { display: block !important; }
  ._pc, ._pc560 { display: none !important; } }
@media screen and (max-width: 468px) { ._sp460 { display: block !important; }
  ._pc460 { display: none !important; } }
@media screen and (max-width: 390px) { ._sp360 { display: block !important; }
  ._pc360 { display: none !important; } }
@media print { #w0 { padding: 0; margin: 0; }
  section .secin { padding-top: 0px; padding-bottom: 0px; }
  .rbtn1, .rbtn2, .rbtnset, .hhemu0, .reqbtn2, .reqbtn, #wrpG, footer, nav, header, .tlink, .flogo, .hlogo, .stab2, .hmenu4, .hmenu3, .hmenu2, .hmenu { display: none; } }
