@charset "utf-8";

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

/*
 * box-sizing
 */

#maincontent img{
max-width: 100%;
    vertical-align: bottom;
    width: auto;
}



#Header h1 ,#Header li, #Header a, #Header .keyword {
  font-size: 12px;
}
.pcrepairtitle02 {
  font-size: 14.4px;
}
#Globalnavi li .menu #reuseBuyIconWrapper .iconList01 a {
  font-size: 15px;
  line-height: 22px;
}
.menu.pcParts .partsList a {
  font-size: 12px;
}
.menu.pcParts .cateBlock, .menu.pcParts .featureBlock, .menu.pcParts .reuseBlock {
  box-sizing: content-box;
}
#Globalnavi li .menu.create .menu-create-item {
  box-sizing: content-box;
}
#Globalnavi li .menu.create .menu-create-ware dd a {
  font-size: 12px;
  line-height: 21px;
}
#Globalnavi li .menu.galleria .menu-galleria-item {
  box-sizing: content-box;
}
#Globalnavi li .menu.galleria ul.gn_ranking_box li .gn_modelName img {
  width: 30px;
}
#Globalnavi li .menu.galleria ul.gn_ranking_box li a, #Globalnavi li .menu.galleria ul.gn_ranking_box li span {
  font-size: 12px;
}
#Globalnavi li .menu.galleria ul.menu-galleria-item-03-text li a {
  line-height: 18px;
}
/*----------------------------------------------------------
    Clearfix
----------------------------------------------------------*/
.clear{clear:both}
br.clear{font-size:1px; line-height:100%; clear:both}
div.clear{line-height:100%;  clear:both}
.clearfix:after{ content:".";  display:block;  height:0;  clear:both;  visibility:hidden}
.clearfix{zoom:1}
* html .clearfix{height:1%}
.clearfix{display:block}
.imgfix{font-size:1px;  line-height:1px}

/*----------------------------------------------------------
    font
----------------------------------------------------------*/
.min { font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", 'Hiragino Mincho Pro', 'MS Mincho','HiraMinProN-W3', serif !important;}
.yu { font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic";}


@media screen and (min-width: 768px) {

}

/*
 * convenient styles
 */
.ta-c { text-align:center; }
.ta-l { text-align:left; }
.ta-r { text-align:right; }
.bold { font-weight:bold; }
.ttl-font { text-align:center; font-weight:bold; }
.block-center { margin:0 auto; }
.full-width { width:100%; }
.justify { text-align: justify; text-justify: distribute;}


/*----------------------------------------------------------
    General
----------------------------------------------------------*/
.fixed { position:fixed !important; z-index:9999;}
.content-inner { margin: 0 1rem; width:auto; position: relative;}
.content-inner:after { content:"";  display:block;  height:0;  clear:both;  visibility:hidden}
.responsive-movie { position:relative; width:100%; padding-top:56.25%}
.responsive-movie iframe { position:absolute; top:0; right:0; width:100% !important; height:100% !important}
@media (min-width: 768px) {
    img { width: auto;}
    .content-inner { width:980px; margin: 0 auto;}
}
/*
 * display
 */
.block { display: block; }
.inline { display: inline; }
.inline-block { display: inline-block; }

/*
 * float
 */
.left { float:left; }
.right { float:right; }

/*
 * position styles
 */
.relative { position:relative; }
.absolute { position: absolute; }
.front-position { position:relative; z-index:1; }

/* absolute-center */
.ab-center { position:absolute; left:0; right:0; margin:auto; }

/*
 * flex box
 */
.flex { display: flex; display: -webkit-flex; }
.f-wrap { flex-wrap: wrap; -ms-flex-wrap: wrap; -moz-flex-wrap: wrap; -webkit-flex-wrap: wrap; }
.f-between { justify-content: space-between; -webkit-justify-content: space-between; }
.flex-list { display: flex; display: -webkit-flex; flex-wrap: wrap; -ms-flex-wrap: wrap; -moz-flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: space-between; -webkit-justify-content: space-between; }

/*----------------------------------------------------------
    table
----------------------------------------------------------*/
#maincontent .table { display: table;}
#maincontent .table > * { display: table-cell;}

/*----------------------------------------------------------
    background
----------------------------------------------------------*/
.cover { -webkit-background-size: cover!important; background-size: cover!important;}

/*----------------------------------------------------------
    hidden
----------------------------------------------------------*/
.hide-sp{ display: none;}
br.hide-sp { display: none;}
@media (min-width: 768px) {
    .hide-pc{ display: none !important;}
    .hide-sp{ display: block;}
    br.hide-pc { display: none;}
    br.hide-sp { display: inline;}
}
@media (min-width: 768px) and (max-width: 1024px){
    br.hide-tablet { display: none;}
}
/*----------------------------------------------------------
    Effect
----------------------------------------------------------*/
@media (min-width: 768px) {
    .ov {
    -webkit-transition: opacity 0.3s;
       -moz-transition: opacity 0.3s;
            transition: opacity 0.3s;
    }
    .ov:hover{ opacity: 0.7;}
}


@media screen and (-webkit-min-device-pixel-ratio: 2){


}/* Retina */


section p { font-size: 1.3rem;}
#container { margin-top: 4rem;}
/*#wrapper { overflow-x: hidden;}*/

@media screen and (min-width: 768px) {
	section p { font-size: 18px;}
}
/*----------------------------------------------------------
	header
----------------------------------------------------------*/
#maincontent .header { width: 100%; top: 0; left: 0; background-color: #fff;}
#maincontent .header_logo { width: 32%; float: left;}
#maincontent .header_btn { width: 12.75rem; float: right;}
#maincontent .header .content-inner { margin-right: 0;}

@media screen and (min-width: 768px) {
	#maincontent .header_logo { width: 214px; padding-top: 6px;}
	#maincontent .header_btn { width: 254px;}
	#maincontent .header .content-inner { margin: 0 auto;}
}
/*----------------------------------------------------------
	kv
----------------------------------------------------------*/
.kv_bg { padding: 2.35rem 0 1.75rem; background: url(https://dev02-ap01-thirdwave.demandware.net/on/demandware.static/-/Library-Sites-RefArchSharedLibrary/default/dw5ea434a0/5info/img/f-13//kv_bg01.jpg);}
.kv .product-image { margin: -0.5rem -0.1rem 0 0;}

@media screen and (min-width: 768px) {
	.kv_bg { height: 682px; padding: 170px 0 0; background: url(https://dev02-ap01-thirdwave.demandware.net/on/demandware.static/-/Library-Sites-RefArchSharedLibrary/default/dw5ea434a0/5info/img/f-13//kv_bg01_pc.jpg) no-repeat center center;}
	.kv .maincopy { width: 490px; }
	.kv .product-image { width: 765px; margin: 0; top: -165px; right: -165px; position: absolute;}
}

/*----------------------------------------------------------
	lightness
----------------------------------------------------------*/
.lightness .headline { margin-bottom: -2.4rem; padding: 2.5rem 0 5rem; background: rgb(25,65,128);
background: -moz-linear-gradient(-45deg, rgba(25,65,128,1) 0%, rgba(25,140,188,1) 100%);
background: -webkit-linear-gradient(-45deg, rgba(25,65,128,1) 0%,rgba(25,140,188,1) 100%);
background: linear-gradient(135deg, rgba(25,65,128,1) 0%,rgba(25,140,188,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#194180', endColorstr='#198cbc',GradientType=1 );}
.lightness .headline h2 { margin: 0 auto; width: 21.35rem;}
.lightness .block .photo { margin-bottom: 2.5rem;}
.lightness .block h3 { margin-bottom: 1.5rem;}
.lightness .block .size { margin-top: 2rem; color: #003d96; font-size: 1.4rem;}
.lightness .block .size .sizehead { display: inline; padding: .3rem 0.8rem; background-color: #003d96; color: #fff; font-size: 1.2rem;}
.lightness .block .size dd { display: inline; margin: 0 1.5rem 0 0.5rem; vertical-align: middle; }
.lightness .block .body { position: relative;}
.lightness_txt-02 {width: 23.85rem;}
.lightness_txt-03 { width: 20.25rem;}
.lightness .block-1 { position: relative; padding-bottom: 8.85rem;}
.lightness .block-1 .side-image { position: absolute; right: 0; bottom: 0; width: 20.2rem;}
.lightness .block-1 .body { position: relative; z-index: 1;}
.lightness .block-2 .startup_time { margin-top: 2.4rem;}
.lightness .footer-image { margin-top: -3.2rem;}

@media screen and (min-width: 768px) {
	.lightness .headline { min-width: 980px; margin-bottom: 50px; padding: 75px 0;}
	.lightness .block .body p { font-size: 20px;}
	.lightness .block .size { font-size: 20px;}
	.lightness .block .size .sizehead { padding: 6px 14px; font-size: 16px;}
	.lightness .block-1 { margin-bottom: 50px; padding-bottom: 0;}
	.lightness .block-1 .side-image{ top: -90px; right: -38px; bottom: auto; width: 460px;}
	.lightness .block-1 .body { float: right; max-width: 560px; width: 57.2%;}
	.lightness .block-1 .photo { margin-left: -230px; float: left; max-width: 600px; width: 61.2%;}
	.lightness .block-2 .startup_time { margin-top: 40px;}
	.lightness .footer-image { width: 938px; margin: 0 auto; height: 80px; position: relative;}
	.lightness .footer-image img { width: 938px; margin-left: -70px; left: 50%; bottom: 60px; position: absolute;}
	.lightness .bg { position: relative; z-index: 1;}
}

/*----------------------------------------------------------
	highspeed
----------------------------------------------------------*/
.highspeed .bg { padding: 4rem 0; background: #f6f6f6 url(https://dev02-ap01-thirdwave.demandware.net/on/demandware.static/-/Library-Sites-RefArchSharedLibrary/default/dw5ea434a0/5info/img/f-13//highspeed_bg01.png) no-repeat 0 0 / 100% auto;}
.highspeed .headline { margin-bottom: 2.15rem; text-align: center;}
.highspeed .spec { margin: 0 auto 2rem; width: 23.9rem;}
.highspeed_txt-01 { width: 27.15rem;}
.highspeed .body span { font-size: 1.1rem;}

@media screen and (min-width: 768px) {
	.highspeed .bg { padding: 70px 0 35px; border-bottom: solid #fff 32px; background: #f6f6f6 url(https://dev02-ap01-thirdwave.demandware.net/on/demandware.static/-/Library-Sites-RefArchSharedLibrary/default/dw5ea434a0/5info/img/f-13//highspeed_bg01_pc.jpg) no-repeat center center / cover;}
	.highspeed .spec { width: 414px; margin: 0 30px 0 0; float: left;}
	.highspeed .body { overflow: hidden;}
	.highspeed .body p { font-size: 20px;}
  .highspeed .body span { font-size: 16px;}
}
/*----------------------------------------------------------
	cv
----------------------------------------------------------*/
.cv-bg { padding: 3rem 0 2rem; background: url(https://dev02-ap01-thirdwave.demandware.net/on/demandware.static/-/Library-Sites-RefArchSharedLibrary/default/dw5ea434a0/5info/img/f-13//cv_bg01.png) no-repeat center center; color: #fff;}
.cv-title { margin-bottom: 1.5rem; text-align: center; line-height: 1.3;}
.cv-title .txt { font-size: 1.9rem; text-align: center; font-weight: bold;}
.cv-title .model { font-size: 1.8rem; text-align: center;}
.cv .btn img { width: 100%;}
.cv .btn {
  display: block;
  padding: 0;
  background: transparent;
}

@media screen and (min-width: 768px) {
	.cv-bg { padding: 50px 0 50px; background-image: url(https://dev02-ap01-thirdwave.demandware.net/on/demandware.static/-/Library-Sites-RefArchSharedLibrary/default/dw5ea434a0/5info/img/f-13//cv_bg01_pc.png)}
	.cv-title { text-align: center;}
	.cv-title .txt { display: inline; font-size: 32px;}
	.cv-title .model { display: inline; font-size: 36px; margin-left: 30px;}
	.cv .btn { width: 435px; margin: 0 auto; display: block; background: transparent;}
  .cv .btn:hover {
    background-color: transparent;
  }
}
/*----------------------------------------------------------
	design
----------------------------------------------------------*/
.design_block-1 { padding: 4rem 0 0;}
.design_block-1 .txt-wrap { position: relative; z-index: 5;}
.design_block-1 .head { margin-bottom: 1.5rem;}
.design_txt-01 { display: inline-block; width: 28.7rem;}
.design_txt-02 { display: inline-block; width: 29.3rem;}
.design_txt-04 { display: inline-block; width: 29.3rem;}
.design_block-2 { padding: 4rem 0 0;}
.design_block-2 .head { margin-bottom: 2.7rem;}
.design_block-2 .keyboard { margin-top: 2.2rem; margin-bottom: 2.4rem;}
.design_block-2 .keyboard .txt { margin-bottom: -3rem; padding: 1.5rem 0 4rem; background-color: #003d96; color: #fff; text-align: center;}
.design_block-2 .keyboard .img { width: 25rem; margin: 0 auto;}
.design_block-3 { padding: 3.4rem 0 2rem; background-color: #f6f7f7;}
.design_block-3 .head { margin-bottom: 1rem; text-align: center;}
.design_block-3 .content { width: 24.85rem; margin: 0 auto 1.5rem;}
.design_block-3 .image { width: 25.4rem; margin: 0 auto;}
.design_block-4 { padding: 3.8rem 0;}
.design_block-4 .head {margin-bottom: 1.5rem;}
.design_block-4 .image { margin: 2rem auto; width: 26.35rem;}
.design_block-4 .utility { margin-bottom: 2rem; padding: 1.5rem; border: 1px solid #003d96; color: #003d96;}

@media screen and (min-width: 768px) {
	.design p { font-size: 20px;}
	.design .text-1 { margin: 0 0 20px; }
	.design_block-1 { padding: 90px 0 110px;}
	.design_block-1 .image { right: -190px; top: -90px; position: absolute;}
	.design_block-1 p { position: relative; z-index: 1;}
	.design_block-2 { padding: 0;}
	.design_block-2 .head { position: relative; margin-bottom: 30px; z-index: 5; }
	.design_block-2 .content-inner { padding: 55px 0 180px 295px;}
	.design_block-2 .content-inner p { position: relative; z-index: 1;}
	.design_block-2 .image { left: -470px; bottom: 0; position: absolute; z-index: 0;}
	.design_block-2 .keyboard { display: flex; position: relative; z-index: 1; margin: 40px auto 0; width: 685px;}
	.design_block-2 .keyboard .txt { display: flex; align-items: center; width: 360px; margin: 0; padding: 0 0 0 30px;}
	.design_block-2 .keyboard .txt p { font-size: 16px; text-align: left;}
	.design_block-2 .keyboard .img { width: 325px;}
	.design_block-3 { padding: 70px 0;}
	.design_block-3 .content { float: left; margin: auto; width: 497px; }
	.design_block-3 .head { text-align: left;}
	.design_block-3 .text { width: 105%; }
	.design_block-3 .image { float: right; max-width: 440px; width: 44.9%;}
	.design_block-4 { padding: 70px 0;}
	.design_block-4 .head { margin-bottom: 49px; text-align: center;}
	.design_block-4 .image { float: left; margin: 0 0 25px; width: 430px; }
	.design_block-4 .content { float: right; max-width: 510px; width: 52%;}
	.design_block-4 .utility { clear: both; margin: 25px 0 0; padding: 20px; text-align: center;}
	.design_block-4 .utility p { font-size: 16px;}
}

/*----------------------------------------------------------
	safety
----------------------------------------------------------*/
.safety_txt-01 {width: 25.9rem;}
.safety { padding: 4rem 0;}
.safety .headline { margin-bottom: 2.4rem; text-align: center;}
/* .safety .campaign { margin: 0 0 3rem;} */
.safety .campaign .image { margin-bottom: 3rem;}
.safety .campaign .body .balloon { margin-bottom: 2.5rem;}
.safety .campaign .body .free dt { display: inline-block; margin-bottom: 1rem; padding: 0.8rem; font-size: 1.4rem;color: #fff; background-color: #003d96;}

@media screen and (min-width: 768px) {
	.safety { padding: 70px 0 45px;}
	.safety .campaign { margin-bottom: 0;}
	.safety .campaign .image { float: left; margin: 0; max-width: 435px; width: 44.4%;}
	.safety .campaign .body { float: right; max-width: 520px; width: 53%;}
	.safety .campaign .body .balloon { margin-bottom: 25px;}
	.safety .campaign .body .free dt { float: left; margin: 4px 20px 0 0; padding: 14px 16px; font-size: 22px; line-height: 1.13;}
	.safety .campaign .body .free dd { float: left; width: 375px; font-size: 18px;}
}
/*----------------------------------------------------------
	service
----------------------------------------------------------*/
.service_wrap { padding: 1.3rem 0; background-color: #f6f7f7;}
.service .headline { padding: 1.1em; background-color: #003d96; text-align: center;}
.service .notes { margin-top: 1rem; font-size: 0.9rem;}
.service_txt-01 { width: 25rem;}
.service-list { padding: 0 1rem;}
.service-list li::after {display: table;clear: both;content: '';}
.service-list li { padding: 1rem 0.5rem 2rem 0; border-bottom: 1px solid #dadbdb;}
.service-list li:last-child { border-bottom: none;}
.service-list .icon { float: right; width: 6.85rem;}
.service-list .body .list-head { display: flex; margin: 1.7rem 0;}
.service-list .body .list-head .num { margin-right: 0.6rem; width: 2.25rem;}
.service-list .body .list-head h3 { color: #003d96; line-height: 1.34; font-size: 1.6rem; font-weight: bold;}

@media screen and (min-width: 768px) {
	.service .notes { font-size: 14px; margin-top: 20px;}
	.service_wrap { padding: 25px 0 5px;}
	.service-list { padding: 0 5.1%;}
	.service-list li { padding: 20px 6.25% 20px 8.52%;}
	.service-list .icon { width: 148px;}
	.service-list .body { width: 560px; }
	.service-list .body .list-head { position: relative; margin: 30px 0 15px;}
	.service-list .body .list-head .num { position: absolute; left: -55px; width: 36px; width: 45px; height: 71px; }
	.service-list .body .list-head h3 { font-size: 28px;}
}
/*----------------------------------------------------------
	plan
----------------------------------------------------------*/
.plan_txt-01 { width: 21.9rem;}
.plan .headline { margin-bottom: 2.5rem; text-align: center;}
.plan .bg { padding: 3.5rem 0;}
.plan_block { margin-bottom: 1.5rem; border: 1px solid #003d96;}
.plan_block .head { padding: 1.5rem 0 1rem; background-color: #003d96; color: #fff;  text-align: center;}
.plan_block .head .txt { margin-bottom: 0.5rem; font-size: 2rem; font-weight: bold; }
.plan_block .head .price { font-size: 1.5rem;}
.plan_block .content { padding: 1.5rem 0 0.4rem;}
.plan_block .content .icons { display: flex; justify-content: center; flex-wrap: wrap;}
.plan_block .content .icons span { flex:0 0 8.75rem; margin-bottom: 1.3rem; text-align: center;}
.plan_block .content .icons img { display: inline-block; width: 6rem;}
.plan_footer { display: flex; margin: 0 1rem;}
.plan_footer .icon { margin-right: 1.2rem; width: 5rem;}
.plan_footer .txt { font-size: 1.4rem; font-weight: bold;}
.plan_footer .txt .bold { color: #003d96;}

@media screen and (min-width: 768px) {
	.plan_txt-01 { display: inline-block; width: 343px;}
	.plan .headline { margin-bottom: 30px;}
	.plan .bg { padding: 40px 0 46px;}
	.plan_container { display: flex; justify-content: space-between;}
	.plan_block { margin-bottom: 40px; width: 320px;}
	.plan_block .head .txt { margin: 0 0 3px; font-size: 22px;}
	.plan_block .head .price { font-size: 18px;}
	.plan_block .content { padding: 20px 0 5px;}
	.plan_block .content .icons span{ flex:0 0 95px; margin-bottom: 15px;}
	.plan_block .content .icons img { width: 65px;}
	.plan_footer { margin: 0 0 0 130px; width: 750px; align-items: center;}
	.plan_footer .icon { margin-right: 30px; width: 99px;}
	.plan_footer .txt p { font-size: 28px;}
}
/*----------------------------------------------------------
	developer
----------------------------------------------------------*/
.developer_txt-01 { width: 17rem;}
.developer .bg { padding: 3.5rem 0 4rem; background-color: #f6f7f7;}
.developer .headline { margin-bottom: 1.6rem; text-align: center;}
.developer .headline .logo { display: inline-block; margin-top: 1.8rem; width: 12.3rem;}
.developer .product_image { margin: 0 auto 1.6rem; width: 26.65rem;}
.developer .txt { margin: 0 .75rem; }
.developer .txt + .txt { margin-top: 1.5rem;; }
.developer .txt-last { margin: .75rem; }

@media screen and (min-width: 768px) {
	.developer_txt-01 { width: 293px;}
	.developer .bg { padding: 60px 0 90px;}
	.developer .headline { margin-bottom: 25px; text-align: left;}
	.developer .headline .logo { margin-top: 30px; width: 214px;}
	.developer .content p { margin: auto 0; font-size: 16px; line-height: 1.68; position: relative; z-index: 1;}
	.developer .content .txt-last { margin-top: 1.6em;}
	.developer .product_image { top: -35px; right: 0; position: absolute; max-width: 533px; width: 54.4%;}
}
/*----------------------------------------------------------
	faq
----------------------------------------------------------*/
.faq_txt-01 { width: 13.7rem;}
.faq .headline { margin-bottom: 2.5rem; text-align: center;}
.faq .bg { padding: 4rem 0;}
.faq_block { margin-bottom: 1rem;}
.faq_block .head { display: table; width: 100%; padding: 1.2rem 0.8rem; background-color: #1950a0; color: #fff; font-size: 1.4rem;}
.faq_block .head > p { display: table-cell; vertical-align: middle; padding-left: 1rem; line-height: 1.2;}
.faq_block .head .icon { display: table-cell; vertical-align: middle; height: 2.4rem; width: 2.3rem; background-color: #fff; color: #1950a0; font-size: 1.4rem; text-align: center;}
.faq_block .head::after { display: table-cell; vertical-align: middle; height: 2.4rem; width: 2.3rem; color: #fff; content: '+'; text-align: center;}
.faq_block.open .head::after { content: '-';}
.faq_block .content { position: relative; padding: 1.5rem 1rem 1rem 4rem;}
.faq_block .content .icon { position: absolute; top: 1.5rem;left: 0.8rem; line-height: 2.4rem; height: 2.4rem; width: 2.3rem; background-color: #00a1e5; color: #fff; font-size: 1.4rem; text-align: center;}
.faq_block .content .notes { margin: .6rem 0 0; font-size: 1rem;}

@media screen and (min-width: 768px) {
	.faq .bg { padding: 65px 0 30px;}
	.faq_wrap { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 20px;}
	.faq_block { max-width: 444px; width: 47.3%;}
	.faq_block .head { padding: 15px 16px;}
	.faq_block .head > p { line-height: 1.55;}
	.faq_block .head::after { display: none;}
	.faq_block .content .icon { top: 12px; left: 16px;}
	.faq_block .content { display: block!important; padding: 20px 20px 20px 80px;}
	.faq_block .content p { font-size: 16px;}
	.faq_block .content .notes { margin: 25px 0 0; font-size: 14px;}
	.faq_block .toggle { pointer-events: none;}
}
/*----------------------------------------------------------
	buy
----------------------------------------------------------*/
.buy_txt-01 { display: inline-block; width: 23.95rem;}
.buy .headline { margin-bottom: 1.3rem; padding: 1.6rem; text-align: center; background-color: #fff;}
.buy .bg { padding: 3rem 0; background-color: #f6f7f7;}
.buy .product_image { position: relative; margin-bottom: 1rem;}
.buy .product_image .txt { position: absolute; top: 3.5rem; left: 3.3rem; font-size: 1.5rem; font-weight: bold;}
.buy .product_image .image { display: block; margin: 0 2.5rem 0 auto; width: 18.6rem;}
.buy_price { margin-bottom: 2rem; text-align: center;}
.buy_price .normal { font-size: 1.2rem;}
.buy_price .normal .bold { font-size: 1.6rem;}
.buy_price .web { font-size: 1.6rem; color: #da0998;}
.buy_price .web .bold { font-size: 2.4rem;}
.buy_price .fee-free { padding: .5rem 0; background-color: #fff; text-align: center; }
.buy_price .discount { margin: 1rem 0 1.5rem;}
.buy_price a { color: #174884; font-weight: bold;}
.buy .btn_block .no-confirm { margin: 3rem 0 0; text-align: center;}

@media screen and (min-width: 768px) {
	.buy_txt-01 { width: 442px;}
	.buy .headline { min-width: 980px; margin-bottom: 35px;}
	.buy .bg { padding: 60px 0 50px;}
	.buy .product_image { float: left; max-width: 462px; width: 47.2%; margin: 0;}
	.buy .product_image .image { margin: 0; width: 100%;}
	.buy .product_image .txt { display: none;}
	.buy_price { min-width: 400px;  margin: 0 0 22px 50.1%; text-align: left;}
	.buy_price .txt { font-size: 30px; font-weight: bold;}
	.buy_price .normal { font-size: 18px;}
	.buy_price .normal .bold { font-size: 26px;}
	.buy_price .web { line-height: 1; font-size: 25px;}
	.buy_price .web .bold { font-size: 41px;}
	.buy_price .fee-free { padding: 7px 0; font-size: 16px; letter-spacing: .04rem; }
	.buy .btn_block { min-width: 400px; margin-left: 50.1%;}
	.buy .btn_block .no-confirm { margin-top: 26px;}
	.buy .content-inner { padding-right: 40px;}
}
/*----------------------------------------------------------
	spec
----------------------------------------------------------*/
.spec .bg { padding: 4rem 0 2rem;}
.spec .headline { margin-bottom: 1.5rem; padding-bottom: 0.3rem; border-bottom: 2px solid #1950a0; font-size: 1.7rem; font-weight: bold; position: relative;}
.spec .headline::after { border-bottom: 2px solid #00a1e5; width: 7rem; height: 0; position: absolute; left: 0; bottom: -2px; content: '';}
.spec-table { width: 100%; margin: 0 0 1.3rem ;}
.spec-table th,
.spec-table td { width: 66%; padding: 0.7rem; border: 1px solid #d5d8d8; font-size: 1.2rem; line-height: 1.38; vertical-align: middle;}
.spec-table th { width: 34%; background-color: #f6f7f7; text-align: right; font-weight: bold;}
.spec .icon_list { display: flex; flex-wrap: wrap;}
.spec .icon_list li { flex: 0 0 4.8rem; margin-bottom: 0.5rem;}
.spec .icon_list li img { width: 4.2rem;}

@media screen and (min-width: 768px) {
	.spec .bg { padding: 0 0 67px; background-color: #f6f7f7;}
	.spec .spec_block { padding: 30px 45px 30px; background-color: #fff;}
	.spec .headline { font-size: 24px; border-bottom-width: 4px;}
	.spec .headline::after { bottom: -4px; border-bottom-width: 4px;}
	.spec-table th,
	.spec-table td { padding: 15px; font-size: 18px;}
	.spec-table th { width: 29.7%; }
	.spec .icon_list li { flex: 0 0 57px; margin: 0 10px 0 0;}
	.spec .icon_list li img { width: 57px;}
}
