@charset "shift_jis";
/*==============================================
 common
============================================= */
/*.lead,*/
.contentsNavi,
.paragraph h2 br{
display:none;
}
#header {
border-bottom: #ededed solid 1px;
}
.copyRight { border-top: 1px solid #ededed; }
.pageTop {
width: 40px;
height: 40px;
right: 10px;
background-size: 40px;
border-radius: 50%;
}

/*==============================================
 看板
============================================= */
h1 {
padding-top: 108%;
margin: 0 auto;
background: url(https://img1.kakaku.k-img.com/images/article/tieup/22/04_roborock/sp_title.jpg) no-repeat center top;
background-size: 100%;
text-indent: -999em;
font-size: 0;
}
p.lead {
padding: 20px 25px 25px;
	color: #fff;
	font-size: 1.2rem !important;
	line-height: 1.8;
}

p.lead a{
color: #ff1a4d;
font-weight: bold;
text-decoration: underline;	}

/*==============================================
 バナー
============================================= */
.bnr a { text-decoration: none; }

/*----　看板下　----*/
.topbnr {
padding: 10px 10px 0 10px;
}
.topbnr a {
background: #c1012c;
color: #fff;
text-align: center;
font-size: 0.95rem;
font-weight: bold;
letter-spacing: 0;
border-radius: 50px;
box-sizing: border-box;
display:block;
margin-bottom: 10px;
padding: 18px 13px;
width: 100%;}

.topbnr .bnr .item {
display:table;
table-layout: fixed;
position: relative;
padding-right: -25px;
width: 100%;
}
.topbnr .bnr .item:after {
content: '';
width: 6px;
height: 6px;
border: 0px;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
/*　↑トップバナー矢印の色を変更する場合はこちら　*/
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
top: 0;
bottom: 0;
margin: auto;
}


/*----　記事内　----*/
.innerbnr{
padding: 30px 0 0;
}
.innerbnr a{
display:block;
box-sizing:border-box;}

.innerbnr a img {
	width: 100%;}

/*==============================================
 #mainContents
============================================= */
.mainTitleWrap {
	background-color: #0d0d0d;
}



/*----- 文字 -----*/
#mainContents .paragraph,
#mainContents .mainTitleWrap,
.productBox {
font-feature-settings: "palt" 1;
letter-spacing: 0.05em;}

.paragraph p {
font-size: 1.28rem;
line-height: 1.9;
margin-top: 30px;
}
.paragraphIn > p:first-child {
margin-top: 10px;
}
.paragraph .cap {
font-size: 1.1rem;
line-height: 1.7 !important;
margin-top: 10px !important;
}

.topcap {
	font-size: 1.1rem !important;
	line-height: 1.7!important;}

sup {
font-size: 60%;
vertical-align: top;
position: relative;
top: 0.3em;}

.paragraph h2 sup {
font-size: 54%;
vertical-align: top;
position: relative;
top: 0.2em;}

/*----　paragraph　----*/
.paragraph {
border-top: 1px solid #636363;
transition: background-color .2s, border-top-color .2s;
}

.spAccordion {
display: none;
padding: 0 25px 30px;
background-color: #fff;
}
.paragraph h2 {
position: relative;
padding: 20px 20px 20px 25px;
color: #fff;
background-color: #0d0d0d;
}

.paragraph h2 span {
display: block;
padding-left: 26px;
font-size: 1.28rem;
line-height: 1.6;
-webkit-tap-highlight-color:rgba(0,0,0,0);
}

.paragraph h2 span span{
padding-left: 0;	
}

.paragraph h2 .icon {
font-size: 1.45rem;
	color: #ff1a4d;
font-weight: bold;
padding-bottom: 5px;}

.paragraph h2:after {
content: "";
display: inline-block;
position: absolute;
top: 1px;
bottom: 0;
left: 20px;/*----　左からの矢印の位置　----*/
width: 8px;
height: 8px;
margin: auto;
-webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
transition: opacity .2s ease, -webkit-transform .2s ease;
transition: transform .2s ease, opacity .2s ease;
transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
vertical-align: middle;
border-bottom: 2px solid #ff1a4d;/*----　矢印の色　----*/
border-right: 2px solid #ff1a4d;/*----　矢印の色　----*/
}
.paragraph.active h2:after {
top: 3px;
-webkit-transform: rotate(225deg);
transform: rotate(225deg);
}

.paragraph h3 {
	font-size: 1.4rem;
	line-height: 1.6;
	font-weight: bold;
margin-top: 40px;
border-left: #c8002d 8px solid;
padding-left: 12px;}

.subtit {
font-size: 1.3rem;
font-weight: bold;
margin-bottom: 10px;}

/*----- 画像 -----*/
.imgBox {margin-top: 30px;}
.imgBox div {overflow: hidden;}

.imgBox.w460 img{width: 40%;}

.imgBox.w460 .floatL,
.imgBox.w460 .floatR,
.imgBox.w695 .floatR {
	width: 100%;
	text-align: center;
}

.imgBox .cap{
	text-align: left;
}

.imgBox img {width: 100%;}

.imgBox div + .cap{
	margin-top: 15px;}
.imgBox a + .cap {
	margin-top: 0;}

.smtop20 {
	margin-top: 20px;
}
.smtop30 {
	margin-top: 30px;
}


.imgBox.w695 div {
	display: table;}

.imgBox.w695 .floatL{
	width: 59%;
padding-right: 2px;
display: table-cell;
vertical-align: bottom;
float: none;}

.imgBox.w695 .floatR{
	width: 39%;
padding-left: 2px;
display: table-cell;
vertical-align: bottom;
float: none;}

.imgBox.w460 .floatL img,
.imgBox.w460 .floatR img,
.imgBox.w695 .floatR img{
	border: #e3e3e3 1px solid;
	box-sizing: border-box;}

/*----- 作例 -----*/
.sampleBox {
margin-top: 30px;
}
.sampleBox img {
width: 100%;
}
.sampleText {
display: block;
font-size: 11px;
margin-top: 5px;
text-align: right;
}
.sampleBox .floatR {
margin-top: 30px;
}

/*----- 動画 -----*/
.movBox { 
margin-top: 30px;
}

.movIcon img{
width: 40px;
	margin-bottom: 10px;
}

.movBox .mov video {
display: block;
width: 100%;
height: auto;
margin-bottom: 10px;
}
.mov .movTxt {
font-size: 13px;
line-height: 1.5;
}
.movWrap {
display: table;
table-layout: fixed;
width: 100%;
margin-bottom: 10px;
}
.movWrap .movLeft,
.movWrap .movRight {
display: table-cell;
width: 50%;
height: auto;
vertical-align: bottom;
}
.movWrap video {
display: block;
width: 100%;
height: auto;
}
.movWrap .movLeft {
padding-right:5px;
}
.movWrap .movRight {
padding-left:5px;
}



/*==============================================
 .productBox
============================================= */
/*----- 製品枠 -----*/
.productBox {
padding:10px 25px 25px;}

.prd_tit {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 100%;
  max-width: 100%;
  color: #c8002d;
box-sizing: border-box;
	text-align: center;
	border: #c8002d 3px solid;
}

.prd_tit:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #c8002d;
}

.prd_tit p {
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
	line-height: 1.6;
	font-weight: bold;
}

.productBox .item{
	overflow: hidden;
}
.productBox a {
display:block;
color:#333;
text-align: center;
margin-top: 30px;}

.productBox a .img {
text-align: center;}

.productBox a .img img {
width: 60%;}

.productBox a .info .catch {
font-size: 1.28rem;
line-height: 1.6;
display:block;
margin-top: 20px;}

.productBox a .info dt.name {
font-size: 2rem;
line-height: 1.6;
letter-spacing: 0;
color: #333;
font-weight: bold;}

.productBox a .info .btn {
font-size: 1.1rem;
font-weight: bold;
line-height: 50px;
height: 50px;
border-radius: 50px;
background-color: #c1012c;
color: #fff;
text-align:center;
margin-top: 10px;
position: relative;}


.productBox a .info .btn:after {
content: '';
width: 8px;
height: 8px;
border: 0px;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
/*　↑トップバナー矢印の色を変更する場合はこちら　*/
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
top: 0;
bottom: 0;
right: 15px;
margin: auto;
}

/*==============================================
.releasedate
============================================= */
.releasedate {
	font-size: 0.85rem; 
	padding: 0 25px 30px;
	color: #333;}

/*==============================================
 アンケート
============================================= */

/*----　カラー変更　----*/
.questionnaire {
    color: #2e2e2e;
}
.questionnaireInner h2 {
    background-color: #0a7bc3;
}
.questionnaireInner h3 .q {
    color: #1b75bc;
}
.question input[type=radio]:checked ~ .radio, .question input[type=checkbox]:checked ~ .check, .question input[type=checkbox]:checked ~ .check::before, .question input:focus, .question .select select:focus, .question textarea:focus {
    border-color: #1b75bc !important;
}
.question input[type=radio]:checked ~ .radio::before {
    background-color: #1b75bc;
}

/*----　文字強調　----*/
.questionnaire .marker {
	background:linear-gradient(transparent 70%, #c2dff7 70%);}

/*----　ベースデザイン　----*/
.questionnaire {
    padding: 3rem 0;
    background-color: #f2f2f2;
    letter-spacing: 0.1em;
    font-feature-settings: "palt"1;
}
.questionnaireInner {
    width: calc(100% - 4rem);
    margin: 0 2rem;
    padding-bottom: 3rem;
    background-color: #fff;
    border-radius: 6px;
    box-sizing: border-box;
}
.questionnaireInner h2 {
    padding: 1.6rem 2rem 1.6rem;
    border-radius: 0.6rem 0.6rem 0 0;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
}
.questionnaireInner h3 {
    line-height: 1.8;
    font-size: 1.4rem;
    font-weight: bold;
}
.questionnaireInner h3 .q {
    display: block;
    font-size: 1.4rem;
}
.questionnaireInner h3 .required {
    margin-left: 1rem;
    color: #e20000;
}
.question {
    padding: 2rem 2rem 0;
}
.question:first-child {
    padding-top: 3rem;
}
.question ul {
    list-style: none;
    margin-top: 1rem;
    overflow: auto;
}
.question ul li {
    display: block;
    position: relative;
    float: left;
    width: 100%;
}
.question ul li label {
    display: block;
    position: relative;
    line-height: 1.4;
    font-weight: 300;
    font-size: 1.4rem;
    padding-left: 3rem;
    margin: 0.5rem auto;
    z-index: 9;
    cursor: pointer;
    -webkit-transition: all .2s linear;
}

/* radio */
.question ul li input[type=radio] {
    position: absolute;
    visibility: hidden;
}
.question ul li .radio {
    display: block;
    position: absolute;
    border: 3px solid #cccccc;
    border-radius: 100%;
    height: 1.2rem;
    width: 1.2rem;
    top: 0.4rem;
    left: 0;
    z-index: 5;
    transition: border .2s linear;
    -webkit-transition: border .2s linear;
}
.question ul li .radio::before {
    display: block;
    position: absolute;
    content: '';
    border-radius: 100%;
    height: 0.6rem;
    width: 0.6rem;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transition: background .2s linear;
    -webkit-transition: background .2s linear;
}
.question input[type=radio]:checked ~ .radio {
    border: 3px solid;
}

/* checkbox */
.question ul li input[type=checkbox] {
    position: absolute;
    visibility: hidden;
}
.question ul li .check {
    display: block;
    position: absolute;
    border: 3px solid #cccccc;
    border-radius: 0.3rem;
    height: 1.2rem;
    width: 1.2rem;
    top: 0.4rem;
    left: 0;
    z-index: 5;
    transition: border .2s linear;
    -webkit-transition: border .2s linear;
}
.question ul li .check::before {
    display: block;
    position: absolute;
    content: '';
    height: 0.5rem;
    width: 0.2rem;
    top: -0.2rem;;
    bottom: 0;
    left: 0;
    right: 1px;
    margin: auto;
    border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
    transition: border .2s linear;
    -webkit-transition: border .2s linear;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
					
}
.question input[type=checkbox]:checked ~ .check {
    border: 3px solid;
}
.question input[type=checkbox]:checked ~ .check::before {
    border-bottom: 2px solid;
	border-right: 2px solid;
}

/* select */
.question .select {
    display: inline-block;
    position: relative;
    width: 100%;
    margin: 1rem 0 0 0;
}
.question .select select {
    display: inline-block;
    width: 100%;
    cursor: pointer;
    padding: 0.5rem 3.0rem 0.5rem 1rem;
    outline: 0;
    border: 1px solid #cccccc;
    border-radius: 0.3rem;
    font-size: 1.2rem;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    transition: border .2s linear;
}
.question .select .arrow {
    position: absolute;
    top: 1.2rem;
    right: 1.5rem;
    width: 0;
    height: 0;
    pointer-events: none;
    border-style: solid;
    border-width: 8px 5px 0 5px;
    border-color: #2e2e2e transparent transparent transparent;
}
.question .select select:focus {
    border: 1px solid;
}

/* textarea */
.question textarea {
    width: 100%;
    height: 10rem;
    margin-top: 1.5rem;
    padding: 0.5rem 1rem;
    border: 1px solid #cccccc;
    border-radius: 6px;
    font-size: 1.4rem;
    outline: 0;
    transition: border .2s linear;
    box-sizing: border-box;
}
.question textarea:focus {
    border: 1px solid;
}

/* input */
.question input {
    width: 100%;
    margin-top: 1rem;
    padding: 0.5rem 1rem;
    border: 1px solid #cccccc;
    border-radius: 6px;
    font-size: 1.4rem;
    outline: 0;
    transition: border .2s linear;
    box-sizing: border-box;
}
.question input:focus {
    border: 1px solid;
}
.question ul li.text label {
    display: inline-block;
}
.question ul li.text input {
    width: 100%;
    box-sizing: border-box;
}

/* .btnSend */
.btnSend {
    margin-top: 3rem;
    text-align: center;
}
.btnSend a {
    display: inline-block;
    width: calc(100% - 4rem);
    margin: 0 2rem;
    padding: 1rem 0;
    background-color: #0a7bc3;
    border-radius: 0.3rem;
    text-align: center;
    font-size: 1.4rem;
    color: #fff;
    transition: background-color .2s linear;
}

/* .thanks */
.thanks {
    margin-top: 4rem;
    margin-bottom: 1rem;
    text-align: center;
    font-size: 1.4rem;
}

