@charset "UTF-8";
/*---------------------------------------------------------------
top/style.css
-----------------------------------------------------------------*/

@media print, screen and (min-width: 1220px){
.spOnly {
		display: none;
}


ul#gnavi li a.active::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 50%;
	height: 1px;
	background-color: #000;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
ul#gnavi li a.active:hover::after {
	width: 100%;
}


#main{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 0px;
	padding-bottom: 50px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #F2F2F2;
}
#main .photo{
	padding-bottom: 50px;
}
#main .photo img{
	width: 100%;
}
#main .title{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 50px;
}
#main .line{
	height: 50px;
	width: 100%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #F2F2F2;
}
#main p{
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 0px;
	font-size: 12px;
	line-height: 24px;
	text-align: center;
}



#regular{
	width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 55px;
	padding-bottom: 0px;
}
#regular .left{
	float: left;
}
#regular .right{
	float: right;
}

#regular .p-box{
	max-width: 600px;
	padding-bottom: 150px;
}
#regular .p-box img{
	width: 100%;
}

#regular .t-box{
	width: 530px;
	text-align: left;
	padding-bottom: 150px;
	height: 600px;
}
#regular .t-box .in{
	position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
}
#regular .t-box .box{
	padding-top: 17px;
	padding-bottom: 16px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #B8B8B8;
}
#regular .t-box .box .col{
	float: right;
	width: 82px;
	text-align: right;
}
#regular .t-box .box .col img{
	margin-left: 5px;
}
#regular .t-box .title{
	font-size: 17px;
	font-weight: bold;
}
#regular .t-box .sub{
	font-size: 14px;
	line-height: 140%;
}
#regular .t-box .sub span{
	font-size: 12px;
	padding-left: 5px;
}
#regular .t-box .txt{
	font-size: 12px;
	line-height: 140%;
}
#regular .t-box .txt span{
	width: 100px;
	display: block;
	float: left;
}
#regular .t-box .bt{
	margin-top: 25px;
}
#regular .t-box .full{
	font-size: 14px;
	margin-top: 38px;
	padding-bottom: 15px;
	font-weight: bold;
}
#regular .t-box .full a{
	background-image: url(../images/arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 20px;
}
#regular .t-box .full a:link ,
#regular .t-box .full a:visited {
	color:#000;
	text-decoration: underline;
}
#regular .t-box .full a:active ,
#regular .t-box .full a:hover {
	color:#000;
	text-decoration: none;	
}




#feature{
	width: 100%;
	background-color: #F2F2F2;
}
#feature .inner{
	width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
#feature .inner .photo{
	float: left;
	width: 305px;
}
#feature .inner .photo img{
	width: 100%;
}
#feature .inner p{
	float: right;
	width: 818px;
	height: 200px;
	font-size: 12px;
	text-align: left;
	vertical-align: middle;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}




#detail{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 78px;
	padding-bottom: 0px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #F2F2F2;
}
#detail .inner{
	width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
#detail .inner .title{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 45px;
}
#detail .inner .box{
	float: left;
	width: 380px;
	text-align: left;
	padding-bottom: 65px;
	margin-right: 30px;
}
#detail .inner .box.end{
	margin-right: 0px;
}
#detail .inner .box img{
	width: 100%;
}
#detail .inner .box .point{
	font-size: 15px;
	font-weight: bold;
	padding-top: 5px;
	padding-bottom: 5px;
}
#detail .inner .box .txt{
	font-size: 12px;
	width: 100%;
	padding-top: 0px;
	padding-bottom: 0px;
}




#btgroup{
	width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 75px;
	padding-bottom: 75px;
}
#btgroup .bt{
	margin-top: 53px;
	float: left;
	margin-right: 70px;
}
#btgroup .limited{
	float: right;
	width: 345px;
}
#btgroup .limited a{
-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
}
#btgroup .limited a:hover{
  opacity:0.5;
  filter: alpha(opacity=50);
}





}
@media screen and (max-width: 1219px) and (min-width: 764px){
.pcOnly {
		display: none;
}
.pcOnly {
	display: block;
}


ul#gnavi li a.active::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 50%;
	height: 1px;
	background-color: #000;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
ul#gnavi li a.active:hover::after {
	width: 100%;
}



#main{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 0px;
	padding-bottom: 50px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #F2F2F2;
}
#main .photo{
	padding-bottom: 50px;
}
#main .photo img{
	width: 100%;
}
#main .title{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 50px;
}
#main .line{
	height: 50px;
	width: 100%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #F2F2F2;
}
#main p{
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 0px;
	font-size: 12px;
	line-height: 24px;
	text-align: center;
}



#regular{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 55px;
	padding-bottom: 0px;
}
#regular .left{
	float: left;
}
#regular .right{
	float: right;
}

#regular .p-box{
	width: 50%;
	padding-bottom: 150px;
}
#regular .p-box img{
	width: 100%;
}

#regular .t-box{
	width: 44%;
	text-align: left;
	padding-bottom: 150px;
	height: 600px;
}
#regular .t-box .in{
	position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
}
#regular .t-box .box{
	padding-top: 17px;
	padding-bottom: 16px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #B8B8B8;
}
#regular .t-box .box .col{
	float: right;
	width: 82px;
	text-align: right;
}
#regular .t-box .box .col img{
	margin-left: 5px;
}
#regular .t-box .title{
	font-size: 17px;
	font-weight: bold;
}
#regular .t-box .sub{
	font-size: 14px;
	line-height: 140%;
}
#regular .t-box .sub span{
	font-size: 12px;
	padding-left: 5px;
}
#regular .t-box .txt{
	font-size: 12px;
	line-height: 140%;
}
#regular .t-box .txt span{
	width: 100px;
	display: block;
	float: left;
}
#regular .t-box .bt{
	margin-top: 25px;
}
#regular .t-box .full{
	font-size: 14px;
	margin-top: 38px;
	padding-bottom: 15px;
	font-weight: bold;
}
#regular .t-box .full a{
	background-image: url(../images/arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 20px;
}
#regular .t-box .full a:link ,
#regular .t-box .full a:visited {
	color:#000;
	text-decoration: underline;
}
#regular .t-box .full a:active ,
#regular .t-box .full a:hover {
	color:#000;
	text-decoration: none;	
}




#feature{
	width: 100%;
	background-color: #F2F2F2;
}
#feature .inner{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
#feature .inner .photo{
	float: left;
	width: 25%;
	height: 200px;
	vertical-align: middle;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}
#feature .inner .photo img{
	width: 100%;
}
#feature .inner p{
	float: right;
	width: 68%;
	height: 200px;
	font-size: 12px;
	text-align: left;
	vertical-align: middle;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}




#detail{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 78px;
	padding-bottom: 0px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #F2F2F2;
}
#detail .inner{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
#detail .inner .title{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 45px;
}
#detail .inner .box{
	float: left;
	width: 31%;
	text-align: left;
	padding-bottom: 65px;
	margin-right: 2.5%;
}
#detail .inner .box.end{
	margin-right: 0px;
}
#detail .inner .box img{
	width: 100%;
}
#detail .inner .box .point{
	font-size: 15px;
	font-weight: bold;
	padding-top: 5px;
	padding-bottom: 5px;
}
#detail .inner .box .txt{
	font-size: 12px;
	width: 100%;
	padding-top: 0px;
	padding-bottom: 0px;
}




#btgroup{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 75px;
	padding-bottom: 75px;
}
#btgroup .bt{
	margin-top: 53px;
	float: left;
	margin-right: 5%;
	width: 25%;
	position: relative;
}
#btgroup .bt img{
	width: 100%;
}
#btgroup .limited{
	float: right;
	width: 28%;
}
#btgroup .limited img{
	width: 100%;
}
#btgroup .limited a{
-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
}
#btgroup .limited a:hover{
  opacity:0.5;
  filter: alpha(opacity=50);

}




}

@media screen and (max-width: 763px){
.pcOnly {
		display: none;
}



#main{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 0px;
	padding-bottom: 3em;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #F2F2F2;
}
#main .photo{
	padding-bottom: 3em;
}
#main .photo img{
	width: 100%;
}
#main .title{
	width: 35%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 3em;
}
#main .title img{
	width: 100%;
}
#main .line{
	height: 4em;
	width: 100%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #F2F2F2;
}
#main p{
	max-width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 0px;
	font-size: 100%;
	line-height: 180%;
	text-align: center;
}



#regular{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 3em;
	padding-bottom: 0px;
}
#regular .left{
	float: none;
}
#regular .right{
	float: none;
}

#regular .p-box{
	width: 100%;
	padding-bottom: 2em;
}
#regular .p-box img{
	width: 100%;
}

#regular .t-box{
	width: 100%;
	text-align: left;
	padding-bottom: 3em;
	margin-top: 0px;
}
#regular .t-box .in{

}
#regular .t-box .box{
	padding-top: 1em;
	padding-bottom: 1em;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #B8B8B8;
}
#regular .t-box .box .col{
	float: right;
	width: 82px;
	text-align: right;
}
#regular .t-box .box .col img{
	margin-left: 5px;
}
#regular .t-box .title{
	font-size: 140%;
	font-weight: bold;
}
#regular .t-box .sub{
	font-size: 120%;
}
#regular .t-box .sub span{
	font-size: 90%;
	padding-left: 5px;
	display: block;
}
#regular .t-box .txt{
	font-size: 100%;
}
#regular .t-box .txt span{
	width: 100%;
	display: block;
	float: none;
}
#regular .t-box .bt{
	margin-top: 2em;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
#regular .t-box .bt img{
	width: 100%;
}
#regular .t-box .full{
	font-size: 100%;
	margin-top: 2em;
	padding-bottom: 0px;
	font-weight: bold;
}
#regular .t-box .full a{
	background-image: url(../images/arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 20px;
}
#regular .t-box .full a:link ,
#regular .t-box .full a:visited {
	color:#000;
	text-decoration: underline;
}
#regular .t-box .full a:active ,
#regular .t-box .full a:hover {
	color:#000;
	text-decoration: none;	
}




#feature{
	width: 100%;
	background-color: #F2F2F2;
	padding-bottom: 3em;
}
#feature .inner{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
#feature .inner .photo{
	float: none;
	width: 80%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}
#feature .inner .photo img{
	width: 100%;
}
#feature .inner p{
	float: none;
	width: 100%;
	height: auto;
	font-size: 100%;
	text-align: left;
}




#detail{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 3em;
	padding-bottom: 0px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #F2F2F2;
}
#detail .inner{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
#detail .inner .title{
	width: 55%;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 2em;
}
#detail .inner .title img{
	width: 100%;
}
#detail .inner .box{
	float: none;
	width: 100%;
	text-align: left;
	padding-bottom: 2em;
	margin-right: 2.5%;
}
#detail .inner .box.end{
	margin-right: 0px;
}
#detail .inner .box img{
	width: 100%;
}
#detail .inner .box .point{
	font-size: 120%;
	font-weight: bold;
	padding-top: 6px;
	padding-bottom: 4px;
}
#detail .inner .box .txt{
	font-size: 100%;
	width: 100%;
	padding-top: 0px;
	padding-bottom: 0px;
}




#btgroup{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 3em;
	padding-bottom: 3em;
}
#btgroup .bt{
	margin-top: 0px;
	float: none;
	margin-right: 5%;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	margin-bottom: 2em;
}
#btgroup .bt img{
	width: 100%;
}
#btgroup .limited{
	float: none;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
#btgroup .limited img{
	width: 100%;
}

#btgroup .limited a{
-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
}
#btgroup .limited a:hover{
  opacity:0.5;
  filter: alpha(opacity=50);

}




}