@charset "UTF-8";
/*
メインカラー #4698CC
やや薄いメイン #a2cbe5
とても薄いメイン #eff6fb
補色（オレンジ） #cc7a46
グリーン系 #46cc7a
赤系 #cc4655
黄系 #ccbd46
*/
/*
【全体】
*/
/*フォント*/
body{
    color: #333;
    font-size: 16px;
    line-height: 1.8;
}
/*タイトル表示*/
@media screen and (min-width: 768px){
    #header .title, #header .desc {
        width: 80%;
    }
}
/*タイトル背景色を無くす*/
[data-main-header*="wide"]:not([data-headerimg-img-sp="false"]):not([data-headerimg-title-sp="under"]) .headerimg-txt {
    background: none;
}
/*
【ボタン】
*/
/*アフィリンクbutton(green）*/
.inline-block {
	text-align: center;
}
.square_btn {
    position: relative;
    display: inline-block;
    padding: 0.5em 1em;
    font-size:140%;
    background: #2cb520;/*色*/
    border-radius: 3px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    font-weight: bold;
    border: solid 2px #24941a;/*線色*/
    margin-bottom: 0.5em;
}
.square_btn a,.square_btn i{
     color: #FFF;
     text-decoration: none;
}
.square_btn:active {/*押したとき*/
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}
/*アフィリンクbutton(orange）*/
.btn_orange{
	background: #fd9535;/*色*/
	border: solid 2px #d27d00;/*線色*/
}
/*ショッピング*/
.ama, .raku, .ya{
    font-size: 1.1em;
    font-weight: bold;
    border-radius: 2px;
    margin: 0.8em;
    padding: 0.3em;
    width: 90%;
}
.ama a{
    color: black;
}
.raku a, .ya a{
    color: white;
}
.ama{
    background-color: #FFA724;
}
.raku{
    background-color: #BF0000;
}
.ya{
    background-color: #FF0033;
}
/*
【文字装飾】
*/
/*太字*/
.bold{
    font-weight:bold;
}
/*赤文字*/
.red,.red a{
    color: #cc4655;
    font-weight:bold;
}
/*青蛍光ペン*/
.blue{
	background: #eff6fb;
	font-weight: bold;
}
/*大きな文字*/
.big,.big a{
    font-size: 120%;
    font-weight: bold;
}
/*
/*さらに大きな文字*/
.exbig{
    font-size: 140%;
    font-weight: bold;
}
/*画像の引用表記*/
p.img-q,p.img-q a{
    text-align: center;
    font-size: 90%;
    color: #666;
}
/*
【ボックス】
*/
/*見出し付きボックス*/
.midashi {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #a2cbe5;
    border-radius: 5px;
    background-color: #eff6fb;
    font-size: .9em;
}
.midashi .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #152d3d;
    font-weight: bold;
}
.midashi p {
    margin: 0; 
    padding: 0;
}
/*RED BOX*/
.redbox{
    border-color: #cc7a46;
    background-color: #FBF4EF;
}
.redbox .box-title {
    color: #140C07;
}
/*attention*/
.attention,.accept{
    background-image: url(img/attention-cat.png);
    background-repeat: no-repeat;
    background-size: 50px 75px;
    background-position: 5px 5px;
    padding: 12px 15px 12px 60px;
}
/*accept*/
.accept{
    background-image: url(img/accept-cat.png);
    background-size: 50px 50px;
}
/*matome*/
.matome{
    background: url(img/matome-cat.png) left bottom/102px 150px no-repeat;
    padding: 1em 1em 100px 102px;
    margin: 1em 0;
    position: relative;
}
.matome p{
    position: absolute;
    display: inline-block;
    top: 1em;
    left: 130px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #4F9DCF;
    font-weight: bold;
}
#main .matome ul{
    font-size: 17px;
    font-weight: bold;
    line-height: 1.4;
    border: #a2cbe5 solid 2px;
    border-radius: 5px;
    padding-left: 1.5em;
　　padding-top: .5em;
    list-style: disc;
}
#main .matome ul li{
    background-image: none;
    padding: 0;
}
@media screen and (max-width: 415px) {
    /*スマホ向け位置調整*/
    .matome{
        padding: 0 0 75px 0;
        background-size: 51px 75px;
    }    
   .matome p{
	top: -8px;
        left: 20px;
    }
}
.flow{
    text-align: center;
    font-size: 1.3em;
    font-weight: bold;
}
.flow i{
    font-size: 3em;
    color: #cc7a46;
}
/*内部リンク*/
.in_link{
    border: 1px #cc7a46 solid;
    border-radius: 5px;
    padding: .7em;
    margin: 1em;
}
.in_link p::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900; 
    content: "\f13d";
    color: #cc7a46;
  }
/*外部リンク*/
.et_link{
    border: 1px #cc7a46 solid;
    border-radius: 5px;
    padding: .7em;
    margin: 1em;
}
.et_link p::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900; 
    content: "\f35d";
    color: #00a1b3;
    margin-left: 5px;
  }
/*目次*/
#index_wrapper {
    padding: 0 14px 100px 102px;
    background: url(img/matome-cat.png) left bottom/102px 150px no-repeat;
}
@media screen and (max-width: 415px) {
    /*スマホ向け位置調整*/
    #index_wrapper {
        padding: 0 0 75px 0;
        background-size: 51px 75px;
    }
    #index_inner {
        padding: 10px;
    }
}
/*縞模様ボックス*/
.stripe{
	background-size: 10px 10px!important;
    padding: 0.5em 1em;
    margin: 2em 0;
	background: linear-gradient(
     -45deg,
     #eff6fb 25%,
     #fff 25%, #fff 50%,
     #eff6fb 50%, #eff6fb 75%,
     #fff 75%, #fff
     );
    box-shadow: inset 0 0 0 1px #eff6fb;
    border: solid 1px #a2cbe5;
}
/*口コミボックス*/
.user3 {
    background-image: url(img/user3.png);
}
.user4 {
    background-image: url(img/user4.png);
}
.user5 {
    background-image: url(img/user5.png);
}
.user1, user2, user3, user4, user5 {
    background-size: 70px 96px;
    min-height: 120px;
}
/*
【レイアウト】
*/
/*h5上の空白*/
#main div.nmlbox h5{
	margin-top: 1.5em;
}
/*中央寄せ*/
.cent {
	text-align: center;
}
/*画像*/
.txt-img{
    margin-top: 1.0em;
    margin-bottom: 1.0em;
    text-align: center;
}
/*アフィリ画像*/
.aff-img img{
    width: 100%;
    max-width: 480px;
    max-height: 100%;
    margin: 0 0 0 0;
}
/*引用*/
div.nmlbox blockquote{
    margin-left: 2.0em;
    margin-bottom: 1.0em;
    font-style: italic;
    font-size: 0.9em;
}

/*YouTube埋め込み*/
.move{
	position:relative;
	width:100%;
	padding-top:56.25%;
}
.move iframe{
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}
/*色のリスト*/
.color-list div{
    display: inline-block;
    width: 100px;
    height: 100px;
    margin: 10px;
}
.color-list div p{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 100px;
    height: 100px;
}
/*
【テーブル】
*/
/*tdの一つ目を太字にする*/
.td-b tbody tr td:first-child{
    font-weight: bold;
    text-align: center;
}
/*基本table*/
table thead,table tbody{
    font-size:15px;
}
thead th,tbody tr th{
    background-color: #eff6fb;
    text-align: center;
}
table,td,th{
    border: solid 1px #a2cbe5;
}
td,th{
    padding: 5px;
    border-style: dotted;
}
/*ブロック化table*/
table.table01 {
	width:100%;
}
@media screen and (max-width: 640px) {
    th,td{
        border-left-width: 0;
        border-right-width: 0;
    }
    table.table01 thead {
	   display:none;
    }
    table.table01 tbody th {
	   display:block;
    }
    table.table01 tbody td {
	   display:block;
    }
    table.table01 tbody td::before {
	   content: attr(label);
	   float: left;
	   clear:both;
	   font-weight:bold;
    }
    table.table01 tbody td {
	   padding-left:3em;
    }
}
/*スクロールtable*/
.table-scroll {
width: 100%;
overflow-y: hidden;
overflow-x: auto;
-ms-overflow-style: -ms-autohiding-scrollbar;
}
.table-scroll table{
border-collapse: collapse;
}
.table-scroll th,.table-scroll td{
white-space: nowrap;
}
.table-scroll::-webkit-scrollbar {
height: 8px; /* スクロールバーの高さ */
}
.table-scroll::-webkit-scrollbar-thumb {
background: #aaa; /* スクロールバーの色 */
}
.table-scroll::-webkit-scrollbar-track {
background: #ccc; /* スクロールバーの背景色 */
}
/*見積り例table*/
.mitsumori thead th{
    text-align: center;
}
.mitsumori tr th{
    white-space: normal;
    width: 6em;
}
.mitsumori tr td:nth-of-type(1){
    white-space: normal;
    width: 12em;
}
.mitsumori tr td:nth-of-type(2),.mitsumori tr td:nth-of-type(4),.mitsumori tr td:last-child{
    text-align: right;
    white-space: nowrap;
}
/*
【計算コンテンツ】
*/
.calc form{
    text-align: center;
}
.calc input[type=radio] {
display: none; /* ラジオボタンを非表示にする */
}
.calc input[type="radio"]:checked + label {
background: #cc7a46;/* マウス選択時の背景色を指定する */
color: #ffffff; /* マウス選択時のフォント色を指定する */
border-color: #a36138;
}
.calc .label:hover {
background-color: #a2cbe5; /* マウスオーバー時の背景色を指定する */ 
}
.calc .label {
display: inline-block;	/* ブロックレベル要素化する */ 
margin: 5px;	/* ボックス外側の余白を指定する */
width: 100px;	/* ボックスの横幅を指定する */
height: 45px;	/* ボックスの高さを指定する */
padding-left: 5px;	/* ボックス内左側の余白を指定する */
padding-right: 5px;	/* ボックス内御右側の余白を指定する */
color: #0e1e28;	/* フォントの色を指定 */
text-align: center;	/* テキストのセンタリングを指定する */
line-height: 45px;	/* 行の高さを指定する */
cursor: pointer;	/* マウスカーソルの形（リンクカーソル）を指定する */
border: 2px solid #4698CC;/* ボックスの境界線を実線で指定する */
border-radius: 5px;	/* 角丸を指定する */
background: #eff6fb;
}
/*    セレクトボックス*/
.cp_ipselect {
overflow: hidden;
width: 100px;
height: 45px;	/* ボックスの高さを指定する */
padding-left: 5px;	/* ボックス内左側の余白を指定する */
padding-right: 5px;
margin: 2em auto;
text-align: center;
}
.cp_ipselect select {
    width: 100%;
    padding-right: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl04 {
    position: relative;
    border-radius: 2px;
    border: 2px solid #4698CC;
    border-radius: 5px;
    background: #eff6fb;
}
.cp_ipselect.cp_sl04::before {
    position: absolute;
    top: 1em;
    right: 0.8em;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #0e1e28;
    pointer-events: none;
}
.cp_ipselect.cp_sl04 select {
    padding: 10px 38px 8px 18px;
    color: #0e1e28;
    font-size: 16px;
}
/*    ボタン*/
input[type="button"] {
    display: block;
    background-image: linear-gradient(0deg, #a2cbe5, #eff6fb); /* グラデーション */
    border: 3px solid #4698CC; /* 枠線 */
    border-radius: 5px;      /* 角丸 */
    padding: 5px;
    width: 130px;
    height: 60px;
    margin: 2em auto;
    font-size: 18px;
    color: #0e1e28;
    font-weight: 600;
}
input[type="button"]:hover{
    background-image: linear-gradient(180deg, #a2cbe5, #eff6fb); /* グラデーション */
    color: #000000;
    font-size: 19px;
}
/*    計算結果*/
#yane,#result{
    text-align: center;
    background: #efd7c7;
    font-size: 23px;
    font-weight: 700;
    padding: 5px;
}
#datalist,#datalist2{
    width: 320px;
    margin:1em auto;
}
/*    必要のない要素を消す*/
.none{
    display: none;
}
/*
【カラーシミュレーター】
*/
/*SVGレスポンシブ対応*/
.svg_outer {
    max-width: 1398px;
    margin: auto;
    border: #eff6fb solid 3px;
    padding: 1em;
}
.svg_inner {
    position: relative;
    width: 100%;
    padding-top: 62%; /* SVG高さ / SVG幅 * 100 */
}
.svg_inner svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*カラー選択を横並びに*/
.input-area div{
    display: inline-block;
    width: 80px;
    height: 40px;
    margin: 5px;
}
.input-area div p{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 80px;
    height: 40px;
}
/*カラー選択エリアの指定*/
.input-area{
    height: 20em;
    overflow-y: scroll;
}