@charset "utf-8";
/* CSS Document */
*{ margin:0; padding:0; box-sizing:border-box;}
div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
ul,ol{ list-style:none;}
html,body {
margin:0 auto;
padding:0;
font-family: Lucida Grande,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif;
font-size:14px;
text-align:left;
color:#fff;
min-width:1200px;
}
@media screen and (max-width:640px){
html,body{ font-size:2.5vw; min-width:240px; max-width:640px;}
}

img{ border-style:none; vertical-align:bottom; padding:0; line-height:0em; max-width:100%; height:auto;}
figure{ margin:0px auto; text-align:center;}


p{ line-height:1.75em; margin:0 0 1em; padding:0;}
p:last-child{ margin:0;}
a{ color:inherit; text-decoration:none;}
a:hover{}
.opa{ transition: all 0.3s ease;}
.opa:hover{ opacity: 0.7;}
@media screen and (max-width:640px){
p{ line-height:1.6em;}
}

.left{ text-align:left;}
.right{ text-align:right;}
.center{ text-align:center;}

.clear{ clear:both;}
.clearfix:after{ margin:0; padding:0; visibility:hidden; content:"."; display:block; line-height:0; clear:both;}

/*ヘッダー*/
body{ background:url("../images/mv.jpg") center top no-repeat #000;}
@media screen and (max-width:640px){
body{ background:url("../images/mv_smp.jpg") center top no-repeat #000; background-size: 100% auto;}
}
#header{ padding: 30px 0;}
#header_t{ width:1120px; margin: 0 auto; display: table; table-layout: fixed;}
#header_t #logo{ display: table-cell; vertical-align: bottom;}
#header_t #menu_pc ul{ display: block !important; letter-spacing: -1em; color: #fff;}
#header_t #menu_pc ul li{ display: inline-block; letter-spacing: 0.025em; font-size: 18px; margin-left: 50px;}
#header_t #menu_pc ul li a{ position: relative; display: inline-block;}
#header_t #menu_pc ul li a:after{ content: ""; width: 0; height: 1px; background: #fff; position: absolute; left: 0; right: 0; bottom: 0; margin: auto; transition: 0.3s;}
#header_t #menu_pc ul li a:hover:after{ width: 100%;}
#header_t #menu_smp{ display: none;}
#header h1{ width: 1000px; margin: 40px auto 360px;}
#header #catch{ background: rgba(0,0,0,0.8); color: #fff; padding: 20px 0; position: relative;}
#header #catch p.txt{ width: 1000px; margin: 0 auto;}
#header #catch p.price{ position: absolute; left: 0; right: 0; bottom: 20px; margin: auto; width: 940px; text-align: right;}
#header #catch figure{ position: absolute;  left: 0; right: 0; bottom: 0; margin: auto; width: 1140px; text-align: right;}
@media screen and (max-width:640px){
#header{ padding:3%; position: relative;}
#header_t{ width:100%; display: block;}
#header_t #logo{ display: inline-block; position: absolute; left: 3vw; top: 3vw; width: 15vw;}
#header_t #menu_pc{ display: none;}
#header_t #menu_smp{ display: inline-block; width: 36%; position: absolute; right: 0; top: 0; z-index: 3; padding: 4.5% 4.5% 0;}
#header_t #menu_smp .smp_nav_btn{ display:block; margin: 0 0 0 auto; width: 8vw; height: 5vw; border-bottom: 1px solid #fff; position: relative; transition: 0.3s;}
#header_t #menu_smp .smp_nav_btn:before{ content: ""; width: 100%; height: 1px; background: #fff; position: absolute; left: 0; top: 0; transition: 0.3s;}
#header_t #menu_smp .smp_nav_btn:after{ content: ""; width: 100%; height: 1px; background: #fff; position: absolute; left: 0; top: 50%; transition: 0.3s;}
#header_t #menu_smp ul{ display: none;}

#header_t #menu_smp.active{ background: rgba(0,0,0,0.8);}
#header_t #menu_smp.active .smp_nav_btn{ border-color: rgba(255,255,255,0);}
#header_t #menu_smp.active .smp_nav_btn:before{ transform: rotate(45deg); top: 2.5vw;}
#header_t #menu_smp.active .smp_nav_btn:after{ transform: rotate(-45deg); top: auto; bottom: 2.5vw;}
#header #menu_smp ul{ margin-top: 4.2vw;}
#header #menu_smp ul li{ display:block; font-size: 4.2vw; margin:0;}
#header #menu_smp ul li{ border-top: 1px solid #fff;}
#header #menu_smp ul li a{ display: block; text-align: center; padding: 0.75em 0;}

#header h1{ width:94%; margin:24% auto 8%;}
#header #catch{ background: none; padding:0;}
#header #catch p.txt{ background: rgba(0,0,0,0.8); width: 100%; padding:6% 3%; margin: 0 auto;}
#header #catch p.price{ bottom: -3vw; width:94%; text-align: center;}
#header #catch figure{ position:static; width: 100%; text-align: center;}
}

/*フッター*/
#footer{ margin:0 auto; background:#4d4d4d; color: #fff; padding:40px 0 0; text-align: center;}
#footer h2{ font-size: 18px; font-weight: normal; margin-bottom: 20px;}
#footer h3{ display: inline-block; border: 1px solid #fff; border-radius: 4px; font-size: 12px; line-height: 1em; padding: 0.33em 1.25em; margin-bottom: 10px;}
#footer h4{ font-size: 14px; margin-bottom: 5px;}
#footer p{ font-size: 12px; line-height: 1.25em;}
#footer p.copyright{ text-align:center; margin:0; padding:1em; background:#000; color:#fff; font-size:12px; margin-top: 40px;}
@media screen and (max-width:640px){
#footer{ padding:9% 0 0;}
#footer h2{ font-size:4.5vw; margin-bottom:7.5%;}
#footer h3{ font-size:3vw; margin-bottom:3vw; padding: 0.66em 2em;}
#footer h4{ font-size:4vw; margin-bottom:1.5%;}
#footer p{ font-size:3.5vw; line-height: 1.5em;}
#footer p.copyright{ font-size:2.5vw; margin-top:9%;}
}

/*メイン*/
#content{ overflow:hidden;}
section { width:100%; margin:0 auto;}
.maincontent { padding:0; margin:0 auto; width:1000px;}
@media screen and (max-width:640px){
.maincontent { padding:0; margin:0 auto; width:94%;}
}

/*sec001*/
#sec001{ margin: 120px auto 40px; text-align: center;}
#sec001 h2{ display: inline-block; width: 420px; border-bottom: 1px solid #fff; margin-bottom: 80px;}
#sec001 ul{ display: table;}
#sec001 ul li{ display: table-cell; vertical-align: top; position: relative;}
#sec001 ul li.ico{ padding: 40px; vertical-align: middle;}
#sec001 ul li span{ position: absolute; left: 0; right: 0; bottom: 0; margin: auto; font-size: 14px; text-align: center;}
#sec001 ul li.product001{ padding-left: 70px;}
#sec001 ul li.product001 h3{ position: absolute; left: 0; top: 0;}
#sec001 ul li.product002{ padding-bottom: 15px;}
#sec001 ul li.product002 h3{ margin-bottom: 40px;}
#sec001 ul li.product003{ padding-bottom: 15px;}
#sec001 ul li.product003 h3{ margin-bottom: 60px;}
@media screen and (max-width:640px){
#sec001{ margin: 12% auto 18%;}
#sec001 h2{ width:66.6666%; padding-bottom: 3%; margin-bottom:15%;}
#sec001 h2 img{ width: 94%;}
#sec001 ul{ display:block; width: 84%; margin:0 auto;}
#sec001 ul li{ display:block;}
#sec001 ul li img{ width:80%;}
#sec001 ul li.ico{ padding:9% 0;}
#sec001 ul li.ico img{ width:15%;}
#sec001 ul li span{ font-size:3.5vw;}
#sec001 ul li h3{ text-align: left;}
#sec001 ul li h3 img{ height: 15vw; width: auto;}
#sec001 ul li.product001{ padding:0;}
#sec001 ul li.product001 h3{ top:9vw;}
#sec001 ul li.product002{ padding:0 0 5vw;}
#sec001 ul li.product002 h3{ margin-bottom:9%;}
#sec001 ul li.product003{ padding:0 0 6vw;}
#sec001 ul li.product003 h3{ margin-bottom:9%;}
#sec001 ul li.product003 h3 img{ height: 12vw;}
}



/*sec002*/
#sec002{ margin-bottom: 70px;}
#sec002 table{ width: 100%; border-spacing: 0; border-collapse: collapse; margin: 0 auto;}
#sec002 table th{ vertical-align: middle; background: #4d4d4d; border-right: 1px solid #fff; text-align: center; padding: 10px;}
#sec002 table th:last-child{ border-right: none;}
#sec002 table th:nth-child(1){ width: 37%;}
#sec002 table th:nth-child(2){ width: 23%;}
#sec002 table th:nth-child(3){ width: 19%;}
#sec002 table th:nth-child(4){ width: 21%;}

#sec002 table td{ vertical-align: middle; border-right: 1px solid #fff; border-bottom: 1px solid #fff; padding: 5px 15px;}
#sec002 table td:last-child{ border-right: none;}
#sec002 table tr:first-child td:nth-child(1){ width: 20%;}
#sec002 table tr:first-child td:nth-child(2){ width: 15%;}
#sec002 table tr:first-child td:nth-child(3){ width: 4%;}
#sec002 table tr:first-child td:nth-child(4){ width: 21%; text-align: center;}
#sec002 table tr:first-child td:nth-child(5){ width: 19%;}
#sec002 table tr:first-child td:nth-child(6){ width: 21%;}
#sec002 table td:nth-child(2){ text-align: center; padding: 0;}
#sec002 table td:nth-child(3){ text-align: center; padding: 0;}

#sec002 table td.prop{ padding-left: 25px;}
#sec002 table td strong{ font-size: 22px; color: #cfad4b; font-weight: bold; text-align: right; display: block; padding-right: 10px; position: relative;}
#sec002 table td strong:before{ width: 108px; height: 7px; content: ""; background: url("../images/sec002_arrow.png") center right no-repeat; background-size: auto 100%; position: absolute; left: -78px; top: calc(50% - 3px);}
#sec002 p{ text-align: right; font-size: 10px; margin-top: 5px;}
@media screen and (max-width:640px){
#sec002{ margin-bottom:6%;}
#sec002 table th{ padding:0.25em 0; font-size: 2.1vw; line-height: 1.25em;}
#sec002 table th:nth-child(1){ width: 38%;}
#sec002 table th:nth-child(2){ width: 20%;}
#sec002 table th:nth-child(3){ width: 18%;}
#sec002 table th:nth-child(4){ width: 23%;}

#sec002 table td{ padding:0.25em 0; font-size: 2.1vw;}
#sec002 table tr:first-child td:nth-child(1){ width: 21%;}
#sec002 table tr:first-child td:nth-child(2){ width: 14.5%;}
#sec002 table tr:first-child td:nth-child(3){ width: 5.5%;}
#sec002 table tr:first-child td:nth-child(4){ width: 17%; text-align: center;}
#sec002 table tr:first-child td:nth-child(5){ width: 18%;}
#sec002 table tr:first-child td:nth-child(6){ width: 23%;}

#sec002 table td.prop{ padding-left:1.5vw;}
#sec002 table td strong{ font-size:3.2vw; padding-right:1.5vw; position: relative;}
#sec002 table td strong:before{ background: url("../images/sec002_arrow_smp.png") center right no-repeat; background-size: auto 100%; width:5vw; height:1vw; left: -3vw; top: calc(50% - 0.5vw);}
#sec002 p{ font-size:2.5vw; margin-top:1em;}
}



/*sec003*/
#sec003{ color: #000; padding-bottom: 75px;}
#sec003 h2{ color: #fff; text-align: center; background: #4d4d4d; font-size: 18px; padding: 10px; margin-bottom: 50px;}
#sec003 .maincontent{ background: #fff; padding: 0 0 50px;}
#sec003 #detail001{ margin-bottom: 100px; padding: 0 70px;}
#sec003 #detail001 dl{ display: table; table-layout: fixed; width: 100%; margin-bottom: 40px;}
#sec003 #detail001 dl dt{ display: table-cell; vertical-align: bottom;}
#sec003 #detail001 dl dd{ display: table-cell; vertical-align: bottom; width: 590px;}
#sec003 #detail001 dl dd h3{ border-bottom: 1px solid #000; padding-bottom: 15px; margin-bottom: 20px; position: relative;}
#sec003 #detail001 dl dd h3 span{ position: absolute; right: 0; bottom: 15px;}
#sec003 #detail001 dl dd p{ line-height: 1.5em;}
#sec003 #detail001 ul{ display: table; table-layout: fixed; width: 100%; border-collapse: separate; border-spacing: 10px 0;}
#sec003 #detail001 ul li{ display: table-cell; vertical-align: top;}
#sec003 #detail001 ul li figure{ margin-bottom: 20px;}
#sec003 #detail001 ul li h4{ border-bottom: 1px solid #000; text-align: center; font-size: 15px; line-height: 1em; letter-spacing: -0.025em; padding-bottom: 10px; margin-bottom: 10px;}
#sec003 #detail001 ul li h4 span{ font-size: 11px;}
#sec003 #detail001 ul li p{ font-size: 12px; line-height: 1.5em;}
@media screen and (max-width:640px){
#sec003{ padding-bottom:15% ;}
#sec003 h2{ font-size:6vw; padding:3%; margin-bottom:9%;}
#sec003 .maincontent{ padding: 0 0 3%;}
#sec003 #detail001{ margin-bottom:24%; padding: 0 4.5%;}
#sec003 #detail001 dl{ display:block; margin-bottom:12%;}
#sec003 #detail001 dl dt{ display:block; text-align: center;}
#sec003 #detail001 dl dt img{ width: 50%; margin-left: -9%;}
#sec003 #detail001 dl dd{ display:block; width:100%;}
#sec003 #detail001 dl dd h3{ padding:9vw 0 3vw; margin-bottom:3vw;}
#sec003 #detail001 dl dd h3 img{ height:8vw;}
#sec003 #detail001 dl dd h3 span{ right:auto; bottom:auto; left:0; top:0;}
#sec003 #detail001 dl dd h3 span img{ height: 7vw;}
#sec003 #detail001 dl dd p{ font-size: 3.5vw;}
#sec003 #detail001 ul{ display:block; border-collapse:collapse; border-spacing:0;}
#sec003 #detail001 ul li{ display:block; margin-bottom: 9%;}
#sec003 #detail001 ul li figure{ margin-bottom:3%;}
#sec003 #detail001 ul li h4{ font-size:4.5vw; letter-spacing:0; padding-bottom:2vw; margin-bottom:3vw;}
#sec003 #detail001 ul li h4 span{ font-size:3vw;}
#sec003 #detail001 ul li p{ font-size:3.5vw;}
}

#sec003 #detail002{ padding: 0 70px 0 30px;}
#sec003 #detail002 dl{ display: table; table-layout: fixed; width: 100%; margin-bottom: 40px;}
#sec003 #detail002 dl dt{ display: table-cell; vertical-align: middle;}
#sec003 #detail002 dl dd{ display: table-cell; vertical-align: middle; width: 590px;}
#sec003 #detail002 dl dd h3{ border-bottom: 1px solid #000; padding-bottom: 15px; margin-bottom: 20px; position: relative;}
#sec003 #detail002 dl dd h3 span{ position: absolute; right: 0; bottom: 15px;}
#sec003 #detail002 dl dd p{ line-height: 1.5em;}
#sec003 #detail002 ul{ letter-spacing: -1em;}
#sec003 #detail002 ul li{ display: inline-block; letter-spacing: 0; vertical-align: top; width: 50%;}
#sec003 #detail002 ul li dl{ margin-bottom: 20px;}
#sec003 #detail002 ul li dl dt{ width: 200px; vertical-align: top;}
#sec003 #detail002 ul li dl dd{ width: auto; vertical-align: top; padding: 15px 10px;}
#sec003 #detail002 ul li h4{ border-bottom: 1px solid #000; font-size: 15px; line-height: 1em; padding-bottom: 10px; margin-bottom: 10px;}
#sec003 #detail002 ul li p{ font-size: 12px; line-height: 1.5em;}
@media screen and (max-width:640px){
#sec003 #detail002{ padding: 0 4.5%;}
#sec003 #detail002 dl{ display:block; margin-bottom:12%;}
#sec003 #detail002 dl dt{ display:block; margin-bottom: 3%;}
#sec003 #detail002 dl dt img{ width:100%;}
#sec003 #detail002 dl dd{ display:block; width:100%;}
#sec003 #detail002 dl dd h3{ padding:7.5vw 0 3vw; margin-bottom:3vw;}
#sec003 #detail002 dl dd h3 img{ height:18vw;}
#sec003 #detail002 dl dd h3 span{ right:auto; bottom:auto; left:0; top:0;}
#sec003 #detail002 dl dd h3 span img{ height: 7vw;}
#sec003 #detail002 dl dd h4{ font-size: 4.5vw; line-height: 1.25em; margin-bottom: 0.5em;}
#sec003 #detail002 dl dd p{ font-size: 3.5vw;}

#sec003 #detail002 ul li{ display:block; width:100%;}
#sec003 #detail002 ul li dl{ margin-bottom:9%;}
#sec003 #detail002 ul li dl dt{ width:100%; margin-bottom: 3%;}
#sec003 #detail002 ul li dl dd{ width:100%; padding:0;}
#sec003 #detail002 ul li h4{ font-size:4.5vw; padding-bottom:2vw; margin-bottom:3vw;}
#sec003 #detail002 ul li p{ font-size:3.5vw;}
}



@media print, screen and (min-width:641px){
.smp{ display:none !important;}
}
@media screen and (max-width:640px){
.pc{ display:none !important;}
}
