@charset "utf-8";

/*-----------------------------------------------
	Common
-----------------------------------------------*/

#header {
    z-index: 4;
}

body {
	font-family: "FrutigerNextW01-Regular", "Lucida Grande","Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
}

img {
	vertical-align: top;
}

.desc {
	line-height: 1.4;
	margin-bottom: 36px;
}

.blue{color:#0d6fb8;}

h1.cate_Ttl {
 text-shadow: -1px -1px 2px #000;
}

#footer {
    z-index: 1;
}

#go-top {
    z-index: 3;
}
.smallcap {
    font-size: 75%;
}
.smallcap span {
    font-size: 135%;
    font-family: MS PGothic;
    vertical-align: middle;
    padding-right: 1px;
}

/*----- .arrowLink -----*/

.arrowLink {
	background-image: url("../images/icon_arrow_black.png");
	background-repeat: no-repeat;
	background-position: 0 0.2em;
	display: inline-block;
	line-height: 1.15;
	padding-left: 20px;
}

.arrowLink:link,
.arrowLink:visited {
	color: #fff;
}

.arrowLink:hover {
	color: #fff;
	text-decoration: underline;
}

/*----- .zoom -----*/

.zoom {
	display: inline-block;
	position: relative;
}

.zoom:after {
	content: url("../images/icon_product_zoom.png");
	display: none;
	position: absolute;
}

.zoom:hover:after {
	display: inline-block;
}

/*-----------------------------------------------
	.navTab
-----------------------------------------------*/

.navTab {
	font-size: 13px;
}

.navTab ul {
}

.navTab ul li.tab {
	border-bottom: 1px solid #e5e5e5;
	float: left;
}

.navTab ul li.tab a {
	border-left: 1px solid #e1e1e1;
	border-right: 1px solid #e1e1e1;
	border-top: 1px solid #e1e1e1;
	box-shadow: 0 -2px 1px rgba(0, 0, 0, 0.03);
	display: block;
	border-radius: 6px 6px 0 0;
	height: 40px;
	line-height: 40px;
	margin-top: 10px;
	text-align: center;
}

.navTab ul li.tab a:link,
.navTab ul li.tab a:visited {
	background-color: #fff;
	color: #626262;
	text-decoration: none;
}

.navTab ul li.tab a:hover {
	background-color: #fff;
	color: #626262;
	height: 50px;
	line-height: 50px;
	margin-top: 0;
	text-decoration: none;
}

/* active */
.navTab ul li.tab.active {
	border-bottom-color: #fff;
}

.navTab ul li.tab.active a {
	font-weight: bold;
	height: 50px;
	line-height: 50px;
	margin-top: 0;
}

.navTab ul li.tab.active a:link,
.navTab ul li.tab.active a:visited,
.navTab ul li.tab.active a:hover {
	background-color: #fff;
	color: #004473;
}

/* tab3 */
.navTab ul.tab3 li.tab {
	width: 320px;
}

.navTab ul.tab3 li.tab + li.tab {
	margin-left: 10px;
}

/* tab4 */
.navTab ul.tab4 li.tab {
	width: 239px;
}

.navTab ul.tab4 li.tab + li.tab {
	margin-left: 8px;
}

/*-----------------------------------------------
	table.spec
-----------------------------------------------*/
table.spec {
    margin: 40px auto 0;
    max-width: 900px;
    width: 100%;
	font-size: 14px;
	line-height: 1.2;
	display: table;
}

thead tr th, thead tr td {
    font-weight: bold !important;
	color: #FFF;
	border-top: 1px solid #666;
	border-bottom: 1px solid #666 !important;
}

thead tr {
	background-color: rgba(102, 102, 102, 0.7) !important;
}

table.spec th,
table.spec td {
	border-bottom: 1px solid #FFF;
	padding: 8px 15px;
	text-align: left;
	font-weight: normal;
}

table.spec th {
	border-right: 1px solid #FFF;
	width: 50%;
}

table.spec .tr_wh th, table.spec .tr_wh td {
    border-right: 1px solid #666;
    border-bottom: 1px solid #666;
}

table.spec td {
	border-right: 0;
	text-align:center;
}

table.spec .tr_wh td {
	border-right: 0;
}

table.spec th span {
	font-size: 12px;
}

table.spec em {
	color: #ff0000;
	font-style: normal;
	font-weight: normal;
}

tr {
    background-color: rgba(0, 0, 0, 0.2);
}
.tr_wh {
    background-color: transparent;
}
@media screen and ( max-width: 768px ) {

table.spec {
	font-size: 12px;
	line-height: 1.2;
	margin: 10px auto 0;
}

table.spec th,
table.spec td {
	padding: 6px 12px;
}

}


/*-----------------------------------------------
	Structures
-----------------------------------------------*/

/*----- #productMain -----*/

#productMain {
	/* background-color: #000; */
	color: #000;
	font-size: 16px;
	line-height: 1.75;
	min-width: 980px;
}

#productMain .headerProduct {
}

#productMain .headerProduct .wrapper {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: 980px;
}

#productMain .headerProduct .wrapper h1 {
	font-size: 37px;
	font-weight: normal;
	line-height: 1.15;
	padding-bottom: 20px;
	padding-top: 22px;
}

#productMain .headerProduct .wrapper .navTab {
	bottom: 0;
	font-size: 16px;
	left: 0;
	position: absolute;
}

#productMain .headerProduct .wrapper .navTab ul li {
	border: none;
}

#productMain .headerProduct .wrapper .navTab ul li.tab a {
	border: none;
	border-radius: 4px 4px 0 0;
	height: 56px;
	line-height: 56px;
}

#productMain .headerProduct .wrapper .navTab ul li.tab a:link,
#productMain .headerProduct .wrapper .navTab ul li.tab a:visited {
	background-color: #8e6d3f;
	color: #fff;
}

#productMain .headerProduct .wrapper .navTab ul li.tab a:hover {
	background-color: #8e6d3f;
	color: #fff;
	height: 66px;
	line-height: 66px;
}

/* active */
#productMain .headerProduct .wrapper .navTab ul li.tab.active {
}

#productMain .headerProduct .wrapper .navTab ul li.tab.active a {
	font-weight: normal;
	height: 66px;
	line-height: 66px;
}

#productMain .headerProduct .wrapper .navTab ul li.tab.active a:link,
#productMain .headerProduct .wrapper .navTab ul li.tab.active a:visited,
#productMain .headerProduct .wrapper .navTab ul li.tab.active a:hover {
	background-color: #cb9c5a;
}

/*----- .section -----*/

.section {
	clear: both;
}

.section .wrapper {
	margin-left: auto;
	margin-right: auto;
	width: 980px;
}

@media screen and ( max-width: 768px ) {
.section .wrapper {
width: 100%;
}
}


/*-----------------------------------------------
	#section00
-----------------------------------------------*/

#section00 {
	background-image: url("../../images/figure_section00_keyvisual_new.jpg");
	background-position: 50% 0;
	background-repeat: no-repeat;
	height: 496px;
	background-color:#fff;
	position:relative;
	z-index:3;
}

#section00 .wrapper {
	padding: 450px 0 0;
}

#section00 .navAnchor {
    margin: 0 auto;
    width: 100%;
}

#section00 .navAnchor li {
	float: left;
	white-space: nowrap;
	width:32%;
	text-align:left;
}

#section00 .navAnchor li:first-child {
	text-align:right;
}

#section00 .navAnchor li:nth-child(2) {
padding-left: 147px;
}

#section00 .navAnchor li:last-child {
padding-left: 75px;
}

#section00 .navAnchor li + li + li {
	margin-left: 15px;
}

#section00 .navAnchor li a.arrowLink {
	background-position: 0 50%;
	font-weight: bold;color:#000;
}


@media screen and ( max-width: 768px ) {

#section00 {
	background-image: none;
	height:auto;
}

#section00 .wrapper {
	padding: 0;

}

#section00 .navAnchor {
	margin: 0 auto;width:100%;padding:0;
}

#section00 .navAnchor li {
    width: 50%;
    background: #fff;
    text-align: center;
    padding: 0 7%;
    height: 44px;
    border: solid #999;
    border-width: 1px 0px;
    line-height: 44px;
    font-size: 14px;
}

#section00 .navAnchor li:first-child {
	text-align:center;
}

#section00 .navAnchor li:last-child {
	border:0;
	padding: 0 7%;
}

#section00 .navAnchor li:nth-child(2) {
	padding: 0 7%;
}

#section00 .navAnchor li:nth-child(2n+1) {
    border-right: 1px solid #999;
}

#section00 .navAnchor li a{
	line-height:44px;
}

#section00 .navAnchor {
	margin: 0;
}

#section00 .navAnchor li + li + li {
	margin-left: 0px;
}
}



/*-----------------------------------------------
	#section01
-----------------------------------------------*/

#section01 {
	position:relative;
	z-index:2;
	width: 100%;
    /*height: 0;
    padding-bottom: 80%;*/
	background-image: url("../images/ptn_road_bg.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
}

#section01::before {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    padding-bottom: 320px;
    -webkit-transform: skewY(-7deg);
    transform: skewY(-7deg);
    z-index: 1;
}

#section01::before {
    top: -140px;
    box-shadow: 0px 15px 15px rgba(144, 144, 144, 0.6);
	background: -moz-linear-gradient(to right, #c70101 10%, #000, #000);
    background: -webkit-linear-gradient(to right, #c70101 10%, #000, #000);
    background: linear-gradient(to right, #c70101 10%, #000, #000);	
}
/*
#section01::after {
    bottom: -200px;
	box-shadow: 0px -15px 15px rgba(144, 144, 144, 0.2);
	background-color:#FFF;
}*/

.cate_box {
    max-width: 980px;
    z-index: 2;
    position: relative;
    display: block;
    margin: 0 auto;
}

.cate_Ttl {
	color:#FFF;
    font-size: 3.2rem;
    font-weight: normal;
    line-height: 3.2rem;
    padding: 80px 0 0 40px;
}

.cate_Ttl span {
    font-size: 4.5rem;
}

#section01 .wrapper {
	padding: 180px 0 120px;
}

#section01 .contents {
width:100%;
padding:0 40px 40px;
float:left;
}

#section01 .contents img {
    padding: 0px 0 15px 0;
    max-width: 90px;
    width: 100%;
    float: left;
}

#section01 .desc {
	margin-bottom:10px;
}

#section01 .desc2 {
    margin: 0 0 15px;
    line-height: 1.5;
    padding-left: 110px;
}

#section01 h2 {
    margin: 0 0 8px 0;
    font-size: 2.4rem;
    font-weight: lighter;
    line-height: 2.4rem;
	word-break: break-all;
}

#section01 h3 {
    padding-left: 110px;
    margin: 0 0 5px;
}

h3 {
    margin: 0 0 8px 0;
    font-size: 1.6rem;
    font-weight: lighter;
    line-height: 1.6rem;
}

.figure {
    width: 50%;
    text-align: left;
    overflow: hidden;
    padding: 0 40px;
}

.figure img {
    width:100%;
}

.figure p {
    font-size: 16px;
    line-height: 1.4;
    padding: 8px 0;
}

#section01 ul {
    display: block;
    width: 100%;
    padding: 40px 0 0;
}

#section01 ul li {
    display: inline-block;
    width: 48%;
}

#section01 .line3 ul li {
    display: inline-block;
    width: 32%;
}

#section01 ul li img {
    width: 90% !important;
    max-width: 650px !important;
    padding: 0 !important;
    float: none !important;
    margin: 20px auto 0;
    display: block;
}

#section01 ul li:last-child {
    margin-left: 2%;
}

#section01 ul li p {
	text-align:left;
}

.contents div {
    margin-bottom: 20px;
    display: inline-block;
}

.Const {
	clear:both;
	display:block;
}

.Const img {
    width: 100% !important;
    max-width: 300px !important;
    margin-right: 20px;
}

#section01 table {
	margin-bottom:50px;
	
}

#section01 table:last-child {
    margin-bottom: 0px;
}

#section01 table.spec th,
#section01 table.spec td {
    width: 33%;
	border-right: 1px solid #FFF;
}

#section01 .line3 table.spec th,
#section01 .line3 table.spec td {
    width: 25%;
}

#section01 table.spec .tr_wh th,
#section01 table.spec .tr_wh td {
    border-right: 1px solid #666;
}

#section01 table.spec td:last-child {
    border-right: 0px;
}


@media screen and ( max-width: 768px ) {

#section01 h2 {
    font-size: 2rem;
    line-height: 2rem;
}

#section01 h3 {
    padding-left: 0px;
}

#section01 ul {
    display: block;
    width: 100%;
    padding: 0;
}

#section01 ul li:first-child, #section01 ul li:last-child {
    width: 100%;
    display: block;
    float: none;
    margin: 0 auto;
}

#section01 .line3 ul li {
    width: 100%;
}

#section01 ul li:first-child {
	padding:20px 0 0 0;
}

#section01 ul li:last-child img {
    width: 60%;
    margin: 10px auto;
}

#section01 .line3 ul li:last-child img {
    width: auto;
}

.figure {
    padding: 0;
}

#section01::before {
    top: -180px;
}

#section01 {
    height: auto;
    background-image: linear-gradient( -45deg, #fff 25%, #ececec 25%, #ececec 50%, #fff 50%, #fff 75%, #ececec 75%, #ececec );
    background-size: 4px 4px;
    background-repeat: repeat;
}

#section01 .wrapper {
	padding: 110px 0 10px;
}

#section01 .figure {
width:90%;
margin:0 auto 0px auto;
padding-top:10px;
float:none;
}

#section01 .contents {
width:100%;
padding:20px 0 0 0;

}

#section01 .contents img {
    float: none;
    margin: 0 auto;
    padding: 5px 0 30px 0;
}

#section01 .desc2 {
    padding-left: 0px;
}

.cate_box {
    width: 85%;
}

.cate_Ttl {
    color: #FFF;
    font-size: 2rem;
    font-weight: normal;
    line-height: 2rem;
    padding: 50px 0 0;
}

.cate_Ttl span {
    font-size: 3rem;
}

#section01 table.spec {
    margin: 10px auto 50px;
}

#section01 table.spec {
	word-break: break-all;
}

}


/*-----------------------------------------------
	#section03
-----------------------------------------------*/

#section03 {
	position:relative;
	z-index:1;
	width: 100%;
    /*height: 0;
    padding-bottom: 80%;*/
	background-image: url("../../images/ptn_spark01_bg.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
}

/*#section03::after
もあった*/
/* #section03::before {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    padding-bottom: 320px;
    -webkit-transform: skewY(-7deg);
    transform: skewY(-7deg);
    z-index: 1;
} */

#section03::before {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    padding-bottom: 320px;
    -webkit-transform: skewY(-7deg);
    transform: skewY(-7deg);
    z-index: 1;
    top: -140px;
    box-shadow: 0px 15px 15px rgba(144, 144, 144, 0.6);
	background: -moz-linear-gradient(to right, #c70101 10%, #000, #000);
    background: -webkit-linear-gradient(to right, #c70101 10%, #000, #000);
    background: linear-gradient(to right, #c70101 10%, #000, #000);	
}

/* #section03::after {
    bottom: -200px;
	box-shadow: 0px -15px 15px rgba(144, 144, 144, 0.2);
	background-color:#FFF;
} */
#section03 .ttl_text{
	color: #333
}
#section03 .logobox,
#section03 .ttlbox{
	float: left;
}
#section03 .ttlbox{
	width: 250px;
}
#section03 .logobox{
	width: 90px;
}
#section03 .logobox img{
	width: 100%;
}
.cate_box {
    max-width: 980px;
    z-index: 2;
    position: relative;
    display: block;
    margin: 0 auto;
}

.cate_Ttl {
	color:#FFF;
    font-size: 3.2rem;
    font-weight: normal;
    line-height: 3.2rem;
    padding: 80px 0 0 40px;
}

.cate_Ttl span {
    font-size: 4.5rem;
}

#section03 .wrapper {
	padding: 150px 0;
}

#section03 .contents {
width:100%;
padding:0 40px 40px;
float:left;
}

#section03 .contents img{
padding:0px 0 10px 0;
/*max-width:80%;
width:100%;*/
}

#section03 .desc {
	margin-bottom:10px;
}

#section03 .desc2 {
	margin:5px 0;
	line-height:1.5;
}

#section03 h2 {
    margin: 0 0 8px 0;
    font-size: 2.4rem;
    font-weight: lighter;
    line-height: 2.4rem;
	word-break: break-all;
}

h3 {
    margin: 0 0 8px 0;
    font-size: 1.6rem;
    font-weight: lighter;
    line-height: 1.6rem;
}

.figure,
.figure2{
    width: 50%;
    text-align: left;
    overflow: hidden;
    padding: 0 40px;
}

.figure img,
.figure2 img{
    width:100%;
}

.figure .image,
.figure2 .image{
    margin-bottom: 30px;
}

.figure p,
.figure2 p{
    font-size: 16px;
    line-height: 1.4;
    padding: 8px 0;
}

.figure .image,
.figure2 .image{
    text-align: center;
}


#section03 .figure,
#section03 .figure2{
    width: 100%;
}

#section03 .figure img,
#section03 .figure2 img{
    margin: 0 auto;
}

#section03 .figure .onlypc,
#section03 .figure2 .onlypc{
    max-width: 542px;
    margin-top: 8px;
}

#section03 .figure,
#section03 .figure2{
	position: relative;
	padding: 0;
}
#section03 .figure2{
	padding-top: 20px;
	margin-top: 50px;
}
#section03 .figure .caption span,
#section03 .figure2 .caption span{
    text-indent: -1.5em;
}

#section03 .figure img.onlysp,
#section03 .figure2 img.onlysp{
    color: #009fe8;
}

#section03 .figure .caption,
#section03 .figure2 .caption{
    position: relative;
    overflow: hidden;
    text-align: left;
    display: block;
	padding-left: 0em;
}

.Hi-Res_mark {
    position: absolute;
    top: 320px;
    left: 40px;
    width: 100%;
    max-width: 300px !important;
    float: left;
    margin-top: 0px !important;
}
#section03 .newcontents .figure .cap1 {
		position: absolute;
    top: 0;
    left: 0px;
    width: 215px;
}
#section03 .newcontents .figure .cap2 {
    position: absolute;
    left: 0;
    top: 235px;
    width: 222px;
    display: inline;
}
#section03 .newcontents .figure .cap3 {
		position: absolute;
    top: 0;
    right: 0;
    width: 210px;
}
#section03 .newcontents .figure .cap4 {
		position: absolute;
    top: 206px;
    right: 0;
    width: 211px;
}
#section03 .newcontents .figure .cap5 {
    position: absolute;
    top: 350px;
    right: 240px;
    width: 300px;
}

#section03 .newcontents .figure2 .cap1 {
		position: absolute;
    top: 135px;
    left: 38px;
    width: 215px;
}
#section03 .newcontents .figure2 .cap2 {
    position: absolute;
    top: 0;
    left: 500px;
}
#section03 .newcontents .figure2 .cap3 {
		position: absolute;
    bottom: 0px;
    right: 330px;
    width: 210px;
}
#section03 .newcontents .figure2 .cap4 {
    position: absolute;
    top: 224px;
    right: 1px;
    width: 211px;
}
#section03 .newcontents .figure2 .cap5 {
    position: absolute;
    top: 83px;
    right: 120px;
}


#section03 .figure .cap1 {
    position: absolute;
    top: 68px;
    left: 18px;
}

#section03 .figure .cap2 {
    position: absolute;
    top: 124px;
    left: 63px;
}

#section03 .figure .cap3 {
    position: absolute;
    top: -9px;
    right: 1px;
    width: 211px;
}

#section03 .figure .cap4 {
    position: absolute;
    top: 108px;
    right: 1px;
    width: 211px;
}

#section03 .figure .cap5 {
    position: absolute;
    top: 253px;
    right: 1px;
    width: 211px;
}

#section03 .contents ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

#section03 .contents ul li {
    margin-right: 3%;
    width: 31.3%;
}

#section03 .contents ul li:last-child {
    margin-right: 0px;
}

#section03 .contents ul li img {
    width: 100%;
}

@media screen and ( max-width: 768px ) {

#section03 h2 {
    font-size: 2rem;
    line-height: 2rem;
}

#section03::before {
    top: -180px;
}

.cate_box {
    width: 85%;
}

.cate_Ttl {
    color: #FFF;
    font-size: 2rem;
    font-weight: normal;
    line-height: 2rem;
    padding: 50px 0 0;
}

.cate_Ttl span {
    font-size: 3rem;
}

#section03 {
    height: auto;
    background-image: linear-gradient( -45deg, #fff 25%, #ececec 25%, #ececec 50%, #fff 50%, #fff 75%, #ececec 75%, #ececec );
    background-size: 4px 4px;
    background-repeat: repeat;
}

#section03 .wrapper {
	padding: 50px 0;
}
#section03 .newcontents {
	padding-bottom: 50px;
}
#section03 .figure,
#section03 .figure2{
    width:100%;
    margin:0 auto 0px auto;
    padding-top:18px;
    float:none;
}

	.figure,
	.figure2{
    padding: 0;
    margin-top: 10%;
}

	.figure p,
	.figure2 p{
    font-size: 14px;
}

	#section03 .figure .caption,
	#section03 .figure2 .caption{
	padding-left: 1.5em;
}


	#section03 .figure img,
	#section03 .figure2 img{
    width:100%;
}

#section03 .contents {
    width:100%;
    padding:75px 0 0 0;

}

#section03 .figure .cap1,
#section03 .figure .cap2,
#section03 .figure .cap3,
#section03 .figure .cap4,
#section03 .figure .cap5,
#section03 .newocntents .figure .cap1,
#section03 .newocntents .figure .cap2,
#section03 .newocntents .figure .cap3,
#section03 .newocntents .figure .cap4,
#section03 .newocntents .figure .cap5,
#section03 .figure2 .cap1,
#section03 .figure2 .cap2,
#section03 .figure2 .cap3,
#section03 .figure2 .cap4,
#section03 .figure2 .cap5 {
    width: 100% !important;
    position: static !important;
		display: block !important;
}

#section03 .contents ul li {
    width: 100%;
    display: block;
    margin: 0 auto !important;
    text-align: center;
}

#section03 .contents ul li img {
    width: 60%;
    margin: 0 auto 20px;
}

#section03 .figure .number1 {
    position: absolute;
    top: -5px;
    left: 17%;
}

#section03 .figure .number2 {
    position: absolute;
    top: -5px;
    left: 34%;
}

#section03 .figure .number3 {
    position: absolute;
    top: -5px;
    left: 51.3%;
}

#section03 .figure .number4 {
    position: absolute;
    top: -5px;
    left: 80%;
}

#section03 .figure .number5 {
    position: absolute;
    right: 18%;
    margin-top: -34px;
}

#section03 .contents ul li:last-child {
    margin-bottom: 10px !important;
}

}


#section03 .line2 .contents ul li {
    display: inline-block;
    width:49%!important;
    text-align: left;
    margin-right: 0%;
}
#section03 .line2 .contents ul li + li{
    margin-left: 2%;
}
#section03 .line2 .ttlbox{
    display:flex;
    width: 100%;
}
#section03 .line2 .ttlbox_text{
    margin-right: auto;
}
@media screen and ( max-width: 768px ) {
    #section03 .line2 .contents ul li {
        width: 100%!important;
    }
    #section03 .line2 .contents ul li{
        margin-bottom:30px!important;
    }
    #section03 .line2 .contents ul li img {
        width: 100%;
        margin: 0 auto;
        padding: 0;
    }
}

a.icon_red_right {
  position: relative;
  display: inline-block;
  padding-left: 15px;
  color: #000000;
  text-decoration: none!important;
}
a.icon_red_right::before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: 2px solid #ff0000;
  border-right: 2px solid #ff0000;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -3px;
  transform: rotate(45deg);
 }


/*-----------------------------------------------
	#section04
-----------------------------------------------*/

#section04 {
    z-index: 2;
    position: relative;
    background-color: #FFF;
}

#section04 .wrapper {
	padding: 50px 0 120px;
}

#section04 {
    text-align: center;
}

#section04 .figure {
    width: 50%;
    text-align: center;
    overflow: hidden;
    display: block;
    margin: 0 auto;
}

#section04 .figure img{
    width:100%;
}

#section04 .contents {
    width: 100%;
    padding: 0 40px 40px;
    float: left;
    text-align: left;
}

#section04 .contents img{
    padding:0px 0 15px 0;
    max-width:80%;
/*width:100%;*/
}

#section04 .figure {
    float: none;
}

#section04 .desc {
	margin-bottom:10px;
}

#section04 .desc2 {
	margin:5px 0;
	line-height:1.5;
}

#section04 h2 { 
	margin:8px 0;
}

h3 { 
	margin:8px 0;
}

#section04 table {
	margin-bottom:100px;
	
}

#section04 table:last-child {
    margin-bottom: 0px;
}

@media screen and ( max-width: 768px ) {

#section04 {
    background-color: #FFF;
    margin-top: -45px;
}

#section04 .wrapper {
	padding: 0 0 10px;
}

#section04 .figure {
width:90%;
margin:0 auto 0px auto;
padding-top:10px;
float:none;
}

#section04 .contents {
width:100%;
padding:0;

}

#section04 table.spec {
    margin: 10px auto 50px;
}

}



/*-----------------------------------------------
	#section05
-----------------------------------------------*/

#section05 {
	position:relative;
	z-index:1;
	width: 100%;
    /*height: 0;
    padding-bottom: 80%;*/
	background-image: url("../images/ptn_spark02_bg.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
}


#section05 .contents {
    width: 100%;
    padding: 0 40px 40px;
    float: left;
}


#section05::before {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 0;
    padding-bottom: 320px;
    -webkit-transform: skewY(-7deg);
    transform: skewY(-7deg);
    z-index: 1;
}

#section05::before {
    top: -140px;
    box-shadow: 0px 15px 15px rgba(144, 144, 144, 0.6);
	background: -moz-linear-gradient(to right, #c70101 10%, #000, #000);
    background: -webkit-linear-gradient(to right, #c70101 10%, #000, #000);
    background: linear-gradient(to right, #c70101 10%, #000, #000);	
}



.cate_box {
    max-width: 980px;
    z-index: 2;
    position: relative;
    display: block;
    margin: 0 auto;
}

.cate_Ttl {
	color:#FFF;
    font-size: 3.2rem;
    font-weight: normal;
    line-height: 3.2rem;
    padding: 80px 0 0 40px;
}

.cate_Ttl span {
    font-size: 4.5rem;
}

#section05 .wrapper {
	padding: 220px 0 120px;
}

.figure {
    width: 50%;
    text-align: left;
    overflow: hidden;
    padding: 0 40px;
}

#section05 .figure {
    width: 50%;
    text-align: center;
    overflow: hidden;
    display: block;
    margin: 0 auto;
}

.width100 {
	width:100%!important;
}

#section05 .figure .caption span {
    text-indent: -1.5em;
}


#section05 .contents {
width:100%;
padding:0 40px 40px;
float:left;
}

#section05 .contents img{
padding:0px 0 15px 0;
/*max-width:80%;
width:100%;*/
}

#section05 .desc {
	margin-bottom:10px;
}

#section05 .desc2 {
	margin:5px 0;
	line-height:1.5;
}

#section05 h2 {
    margin: 0 0 8px 0;
    font-size: 2.4rem;
    font-weight: lighter;
    line-height: 2.4rem;
	word-break: break-all;
}

h3 {
    margin: 0 0 8px 0;
    font-size: 1.6rem;
    font-weight: lighter;
    line-height: 1.6rem;
}

.figure img {
    width:100%;
}

.figure p {
    font-size: 16px;
    line-height: 1.4;
    padding: 8px 0;
}

.figure .image {
    text-align: center;
}

#section05 .figure .caption {
    position: relative;
    overflow: hidden;
    text-align: left;
    display: block;
	padding-left: 0em;
}


#section05 .figure img {
    max-width: 575px;
    width: 100%;
    float: right;
}

#section05 .figure .caption {
    position: relative;
    overflow: hidden;
    text-align: left;
    display: block;
}

#section05 .figure .cap1 {
    position: absolute;
    top: 45px;
    right: 57px;
}

#section05 .figure .cap2 {
    position: absolute;
    top: 322px;
    left: 212px;
}

#section05 .figure .cap3 {
    position: absolute;
    top: 406px;
    left: 212px;
}

#section05 .contents ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin-top: 5%;
}

#section05 .contents ul li {
    margin-right: 3%;
    width: 31.3%;
}

#section05 .contents ul li:last-child {
    margin-right: 0px;
}

#section05 .contents ul li img {
    width: 100%;
}

#section05 .figure {
    position: relative;
}

#section05 .figure .onlypc {
    max-width: 877px;
    margin: 48px auto 60px;
	float: none;
}



#section05 table {
    margin-bottom: 100px;
}

#section05 table:last-child {
    margin-bottom: 0px!important;
}







@media screen and ( max-width: 768px ) {

#section05 h2 {
    font-size: 2rem;
    line-height: 2rem;
}

.figure {
    padding: 0;
    margin-top: 10%;
}

.figure p {
    font-size: 14px;
}

#section05 img.onlysp {
    color: #009fe8;
    max-width: 640px;
    float: none;
}

#section05 .figure .caption {
	padding-left: 1.5em;
}

#section05 .figure .cap1, #section05 .figure .cap2, #section05 .figure .cap3 {
    width: 100%;
    position: static;
}

#section05 .figure .number1 {
    position: absolute;
    top: -5px;
    left: 18.5%;
}

#section05 .figure .number2 {
    position: absolute;
    right: 18.5%;
    margin-top: -32px;
}

#section05 .figure .number3 {
    position: absolute;
    right: 39%;
    margin-top: -32px;
}

#section05::before {
    top: -180px;
}

.cate_box {
    width: 85%;
}

.cate_Ttl {
    color: #FFF;
    font-size: 2rem;
    font-weight: normal;
    line-height: 2rem;
    padding: 50px 0 0;
}

.cate_Ttl span {
    font-size: 3rem;
}

#section05 {
    height: auto;
    background-image: linear-gradient( -45deg, #fff 25%, #ececec 25%, #ececec 50%, #fff 50%, #fff 75%, #ececec 75%, #ececec );
    background-size: 4px 4px;
    background-repeat: repeat;
}


#section05 .wrapper {
	padding: 110px 0 50px;
}

#section05 .figure {
width:100%;
margin:0 auto 0px auto;
padding-top:18px;
float:none;
}

#section05 .contents {
width:100%;
padding:0;

}

#section05  .figure .cap1,
#section05  .figure .cap2,
#section05  .figure .cap3,
#section05  .figure .cap4,
#section05  .figure .cap5 {
    width: 100%;
	left:0;
	top:0;
}

#section05 .contents ul li {
    width: 70%;
    display: block;
    margin: 0 auto !important;
}

#section05 .contents ul li img {
    width: 100%;
}

#section05 table.spec {
    margin: 10px auto 50px;
}

#section05 table {
    margin-bottom: 50px;
}

}


/*-----------------------------------------------
	optionitem
-----------------------------------------------*/
.optionitem {
    width: 900px;
    overflow: hidden;
    margin: 0 auto;
    padding-bottom: 50px;
}

.optionitem .nameinner h2#KCA-RC01A {
    font-size: 1.6rem;
}

.optionitem .nameinner {
    width: 450px;
    float: left;
}

.optionitem img {
    width: 450px;
    float: right;
}

@media screen and ( max-width: 768px ) {
    .optionitem {
        width: auto;
    }

    .optionitem .nameinner,
    .optionitem img {
        float: none;
        width: auto;
    }
    
    .optionitem img {
        max-width: 100%;
    }
}


/*-----------------------------------------------
	#pager
-----------------------------------------------*/

#pager {
    background-color: #FFF;
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 50px 0;
    font-size: 14px;
    line-height: 14px;
    border-top: 1px solid #666666b3;
}

.pagerhead {
    color: #666666b3;
    font-size: 20px;
}

#pager ul {
    width: 100%;
    margin: 15px auto 10px;
    padding: 0 20px;
}

#pager ul li {
    display: inline-block;
    border-right: 1px solid #0003;
    padding: 5px 20px;
}

#pager ul li:last-child {
    border-right: 0;
}

#pager a {
	color:#000;
}

/*

*/
.popup {
    display: block;
    text-align: right;
}
.ico_plus {
    position: relative;
    display: inline-block;
    padding-right: 20px;
    color: #212121;
    font-size: 16px;
}
.ico_plus:after {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 19px;
    color: #FF0004;
    content: "＋";
}
a.ico_plus:link,
a.ico_plus:visited,
a.ico_plus:hover,
a.ico_plus:active {
    color: #212121;
    text-decoration: none;
    outline: none;
}
.slideThumbs {
    padding-top: 10px; overflow: hidden;
}
.slideBigImage {
    background:#fff;
}
.slideThumbs img {
    float: left;
    margin-right: 6px;
    border: 2px solid #FFF;
    cursor: pointer;
    width:60px;
}
.slideThumbs img.current,
.slideThumbs img:hover {
    border: 2px solid #19528d;
}
.slideThumbs02 {
    clear: both;
    padding: 10px 30px;
    text-align: left;
    overflow: hidden;
}
.slideThumbs02 img {
    margin-right: 6px;
    border: 2px solid #FFF;
    cursor: pointer;
    width:60px;
}
.slideThumbs02 img.current,
.slideThumbs02 img:hover {
    border: 2px solid #19528d;
}
.slidePanel {
    position: relative;
}
#slidePanel,
.slidePanel,
#slideThumbs,
.slideThumbs {
    text-align: center;
    padding: 0;
}
#slideThumbs ul,
.slideThumbs ul {
    text-align: center;
}
#slideThumbs ul li,
.slideThumbs ul li {
    display: inline-block;
}
#slideThumbs .current img,
.slideThumbs .current img,
#slideThumbs .current img:hover,
.slideThumbs .current img:hover {
    border: 2px solid #19528d;
}
.productsum {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    padding: 67px 0;
    justify-content: center;
    align-items: center;
}
.standcut {
    order: 2;
    width: 390px;
    text-align: right;
}
.standcut img {
    width: 100%;
}
.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    min-width: 980px;
    height: 100%;
    z-index: 9999999;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: 0.8;
}
.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    min-width: 980px;
    height: 100%;
    z-index: 9999999;
    position: fixed;
    outline: none !important;
    -webkit-backface-visibility: hidden;
}
.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box;
}
.mfp-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}
.mfp-align-top .mfp-container:before {
    display: none;
}
.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045;
}
.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
    width: 100%;
    max-width: 1080px;
    padding: 3% 0;
    background: #fff;
    color: #000;
    cursor: auto;
}
.mfp-ajax-cur {
    cursor: progress;
}
.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: zoom-out;
}
.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
}
.mfp-auto-cursor .mfp-content {
    cursor: auto;
    margin-top: 10px;
    overflow: hidden;
}
.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.mfp-loading.mfp-figure {
    display: none;
}
.mfp-hide {
    display: none !important;
}
.mfp-preloader {
    color: #CCC;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044;
}
.mfp-preloader a {
    color: #CCC;
}
.mfp-preloader a:hover {
    color: #FFF;
}
.mfp-s-ready .mfp-preloader {
    display: none;
}
.mfp-s-error .mfp-content {
    display: none;
}
button.mfp-close,
button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation;
}
button.mfp-close {
    position: fixed;
    right: auto;
    bottom: auto;
    background: #fff;
    margin: 10px 0 0 1090px;
}
.features_list button.mfp-close {
    margin-left: 1058px;
}
.popupImage button.mfp-close {
    margin-top: 144px;
}
button::-moz-focus-inner {
    padding: 0;
    border: 0;
}
.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: 0.65;
    padding: 0 0 18px 10px;
    color: #FFF;
    font-style: normal;
    font-size: 28px;
    font-family: Arial, Baskerville, monospace;
}
.mfp-close:hover,
.mfp-close:focus {
    opacity: 1;
}
.mfp-close:active {
    top: 1px;
}
.mfp-close-btn-in .mfp-close {
    color: #333;
}
.mfp-image-holder .mfp-close {
    color: #FFF;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%;
}
.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #CCC;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap;
}
.mfp-arrow {
    position: absolute;
    opacity: 0.65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent;
}
.mfp-arrow:active {
    margin-top: -54px;
}
.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1;
}
.mfp-arrow:before,
.mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent;
}
.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px;
}
.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7;
}
.mfp-arrow-left {
    left: 0;
}
.mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px;
}
.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F;
}
.mfp-arrow-right {
    right: 0;
}
.mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px;
}
.mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F;
}
.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
}
.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0);
    background: #fff;
}
img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto;
}
.mfp-figure {
    line-height: 0;
}
.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
}
.mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px;
}
.mfp-figure figure {
    margin: 0;
}
.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto;
}
.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #F3F3F3;
    word-wrap: break-word;
    padding-right: 36px;
}
.mfp-image-holder .mfp-content {
    max-width: 100%;
}
.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer;
}
.mfp-support .mfp-content {
    max-width: 1028px;
}


/*--------------------------------------------------------------------------------
 max-width: 768px
--------------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {

    #slidePanel img,
    .slidePanel img {
        width: 100%;
    }

    .mfp-bg,
    .mfp-wrap {
        min-width: 100%;
    }

}


/*--------------------------------------------------------------------------------
max-width: 1188px
--------------------------------------------------------------------------------*/
@media screen and (max-width: 1188px) {

    button.mfp-close {
        top: 10px;
        right: 10px;
        margin: 0;
    }
    .features_list button.mfp-close,
    .popupImage button.mfp-close {
        margin: 0;
    }
    
}
    