@charset "UTF-8";
html{
    overflow-x: hidden;
}
body {
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
    background-color: #faf8f5;
    overflow-x: hidden;
}

p , h1 , h2 , h3{
    	line-height: 1.7;
	margin-top:20px;
}
b{
    font-weight:bold;
}
img{
	width: 100%;
	vertical-align: top;
	margin-top:20px;
}

a {
    color: #115bac;
    /*text-decoration: none;*/
}

a:hover {
    opacity: 0.7;
}

/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 0.8s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

/*装飾*/
.taC{
	text-align: center;
}
.fcR{
    color: #dd3939;
}
.fcB{
    color: #0553b9;
}
.fcG{
    color: #c1c1c1;
}
.fcM{
    color: #68a377;
}
.fcO{
    color: #e76d0f;
}
.fcO{
    color: #ff4c00;
}
.fcGr {
	color: #30a64e;
}
.co_re{
    color: #ff0000;
}
.marker{
    background:linear-gradient(transparent 60%, #ff6 60%);
    font-weight: bold;
}
.fwB{
	font-weight: bold;
}
.bo{
    font-weight: bold;
}
.annotation{
    font-size: 11px;
}

/*文字サイズ*/
.fs{
  font-size: 20px;
  line-height: 1.7;
}
.fs2{
  font-size: 18px;
}
.fs3{
  font-size: 13px;
}
.fs4{
  font-size: 21px;
}
.tyu{
    font-size: 70%;
    text-align: right;
    color: #999;
    margin: 5px 0;
}

.check_btn{
    padding-bottom: 2%;
}

/*余白*/
.mt0{
	margin-top: 0;
}
.mt1{
	margin-top: 1%;
}
/*.mt2{
	margin-top: 1% !important;
}*/

.mt5{
	margin-top: 5%;
}
.mb1{
	margin-bottom: 1%;
}
.mb2{
	margin-bottom: 2%;
}
.mb4{
	margin-bottom: 5%;
}
.mb5{
	margin-bottom: 5%;
}
.pb5{
	padding-bottom: 5%;
}

/*揃え*/
.taL{
    text-align: left;
}
.taR{
    text-align: right !important;
}

/*ビデオサイズ*/
.video_size{
   width: 100%;
}

/*表示非表示*/
.pc{
    display: block;
}
.sp{
    display: none;
}

@media screen and (max-width: 767px) {
.pc{
    display: none;
}
.sp{
    display: block;
}
  }

/*sp改行*/
.br-sp{
	display: none;
}
@media (max-width: 440px) { 
    br-sp{
	display: block;
    }
}

/*フッター*/
footer {
    padding: 5% 2% 6%;
    text-align: center;
    background-color: #68a377;
    color: #fff;
	font-size: 13px;
}

footer a {
    color: #fff;
}

#content {
	width: 680px;
	margin: 0 auto;
    background-color: #fff;
    box-shadow: 0 1px 3px rgb(206 206 206 / 50%);
}

#content02{
    text-align: left;
    margin: 0 auto;
	padding: 2%;
}
h1{
    margin: 0;
}
h2{
    font-size: 23px;
    font-weight: bold;
    color: #fff;
    margin: 8% 0 2%;
    background-color: #ff7b2f;
    padding: 2% 2% 2% 3%;
    text-align: center;
    line-height: 1.5;
}
h3{
    font-size: 20px;
    font-weight: bold;
    margin: 1% 0;
    padding: 1% 1% 1% 2%;
}
h4{
    font-size: 23px;
    font-weight: bold;
    color: #fff;
    margin: 8% 0 2%;
    background: linear-gradient(to left, #3ebaa0, #4bcb77);
    padding: 2% 2% 2% 3%;
    text-align: center;
    line-height: 1.2;
}
h6{
    text-align: center;
    line-height: 1.4;
    background-color: #fff5b6;
    padding: 4% 0%;
    font-size: 19px;
}

/*余白*/
@media screen and (max-width: 767px) {
.mt0{
	margin-top: 0;
}
.mt1{
	margin-top: 10px;
}

.mt2{
	margin-top: 20px;
}
.mb1{
	margin-bottom: 10px;
}
.mb2{
	margin-bottom: 20px;
}
	
#content02{
	padding-top: 0;
}

footer {
    padding: 10% 2%;
	font-size: 14px;
}

h2{
    font-size: 18px;
    margin: 30px 0 25px;
    padding: 2% 2% 2% 3%;
}
}


/*-----MV-----*/
.mv{
    margin-top: 0;
}

/*-----検索-----*/
.sear .btn_s p {
    background-color: #d8d8d8;
    text-align: center;
    color: #fff;
    padding: 2px;
    font-size: 0.8em;
    margin: 13px auto 20px;
    display: block;
    width: 55%;
}
.sear .index_search {
    border-collapse: collapse;
    width: 90%;
    background: #fff;
    font-size: 1em;
}
.sear .searchtable .searchcenter {
    text-align: center;
}

.sear table{
    margin: 0 auto 2%;
}

.sear .index_search td {
    border-collapse: collapse;
    text-align: left;
    vertical-align: middle;
    font-size: 80%;
    width: 70%;
    padding: 0px 0px 0px 30px;
}
.sear .searchtable,.sear .searchtable tr,.sear .searchtable td,.sear .searchtable th {
    padding: 5px 10px 5px 10px;
    text-align: center;
}

.sear table.index_search.mb20.searchtable {
    padding: 5px 10px 5px 10px;
    text-align: center;
	border: 1px solid #ccc;
}
.sear table.index_search.mb20.searchtable td {
    border: 1px solid #afafaf;
}
.sear table.index_search.mb20.searchtable th {
    border: 1px solid #afafaf;
}
.sear .searchtable .searchbutton {
    background-color: #FF6D46;
    border: none;
    color: white;
    padding: 10px 50px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    line-height: 15px;
    margin-top: 10px;
}
.sear .index_search th {
    border-collapse: collapse;
    background-color: #f6f6f6;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    font-size: 80%;
    padding: 10px;
    line-height: 1.4;
    border-right: 1px solid #ccc;
}
.sear .index_search td {
    border-collapse: collapse;
    text-align: left;
    vertical-align: middle;
    font-size: 80%;
    width: 70%;
    padding: 0px 0px 0px 30px;
}
.sear .searchtable .searchbutton {
    background-color: #FF6D46;
    border: none;
    color: white;
    padding: 10px 50px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    line-height: 15px;
    margin: 10px auto;
}

/* 表（タイトル左バージョン） */
.comparison-table a{
    text-decoration: underline;
	color: #115bac;
}
.comparison-table a:hover {
	text-decoration: underline;
}
.comparison-table{
	max-width: 100%;
	word-wrap: break-word;
    border: 7px solid #227e39;
    font-size: 12px;
    margin: 0 auto;
    position: relative;
}

.comparison-table table{
	width: 100%;
	table-layout: fixed;
}
.comparison-table td,.comparison-table th{
	vertical-align: middle;
	line-height: 1.3;
}
.comparison-table td a{
	text-decoration: none;
    font-size: 13px;
}
.comparison-table th{
	text-align: center;
	background-color: #a4df69;
	color: #000;
	padding: 1%;
	border-bottom: 1px solid #fff;
    width: 80px;
}

.comparison-table th:last-child{
	border-bottom: none;
}

.comparison-table td{
	text-align: center;
	border-right: 2px dotted #eee;
	border-bottom: 2px dotted #eee;
	padding: 1.5% 0.5%;
}
.comparison-table tr:last-child td{
    border-bottom: none;
}

.comparison-table td:last-child{
	border-right: none;
}

.comparison-table img{
    width: 100%;
    margin: 10px 0!important;
}

/*アコーディオン*/
.accordion2 {
  position: relative;
    width: 94%;
    border-radius: 10px;
    padding: 3% 3% 1%;
}
.accordion-title2 {
  cursor: pointer;
  font-size: 16px;
}
.accordion-title3 {
  cursor: pointer;
  font-size: 16px;
}
.accordion-content2 {
  display: none;
}
.accordion-content3 {
  display: none;
}
.accordion-content2 p{
        margin-top: 0;
}

.accordion2 h5 {
    margin: 0 0 3%;
    font-size: 16px;
    font-weight: normal;
  background-color: #eee;
      padding: 2%;
  
}
/* 矢印 */
.accordion-title2 {
  position: relative;
}
.accordion-title2::after {
  border-right: solid 2px #000;
  border-top: solid 2px #000;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 25px;
  top: 38%;
  transform: rotate(135deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;
}
.accordion-title3 {
  position: relative;
}
.accordion-title3::after {
  border-right: solid 2px #000;
  border-top: solid 2px #000;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 25px;
  top: 38%;
  transform: rotate(135deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;
}
.accordion-title.open::after {
  top: 45%;
  transform: rotate(-45deg);
}

@media (max-width: 440px) { 
    .accordion-title2::after{
	 border-right: solid 2px #000;
  border-top: solid 2px #000;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 25px;
  top: 25%;
  transform: rotate(135deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;
}
   .accordion-title3::after{
	 border-right: solid 2px #000;
  border-top: solid 2px #000;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 25px;
  top: 25%;
  transform: rotate(135deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;
}
}
/*評価の星*/
.star-ratings-css {
    color: #ffbb00;
    margin-bottom: 5px;
}

/*◎〇▲×*/
.comparison-table td.berry::before{
	content: "◎";
	font-weight: bold;
	color: #ff3a3a;
	font-size: 250%;
}

.comparison-table td.good::before{
	content: "〇";
	color: #9de6f3;
	font-size: 250%;
}

.comparison-table td.usually::before{
	content: "△";
	font-weight: bold;
	color: #ffe20f;
	font-size: 250%;
}

.comparison-table td.not::before{
	content: "×";
	font-weight: bold;
	color: #636363;
    font-size: 250%;
}
.inner.rank-wapper{
    padding: 0;
}
.kome_tbl {
    font-size: 10px;
}  
.comparison-table_ttl_bg {
    background-color: #0051bb;
    border-radius: 10px 10px 0 0;
    margin: 8% auto 0;
    width: 900px;
}
.comparison-table_ttl_inner {
    max-width: 60%;
    margin: 0 auto;
    padding: 2%;
}

/*表　SP*/
@media (max-width: 767px) { 
.comparison-table{
    display: block;
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
    max-width: 100%;
    margin: 0 auto 0;
}

.comparison-table td{
	width: 106px;
    /*display: inline-block;*/
    white-space: normal;
	/*min-height: 150px*/	/*長い文章や改行が多い場合使用*/
    padding: 0.8%;
}

.comparison-table th{
	padding: 10px;
	position: sticky;
	left: 0;
	z-index: 5;
    width: 45px;
    text-align: center;
    line-height: 1.2;
}
.comparison-table_ttl_bg {
    border-radius: 10px 10px 0 0;
    margin-top: 8%;
    max-width: 90%;
    margin: 10% auto 0;
}
.comparison-table_ttl_inner {
    max-width: 85%;
    margin: 0 auto;
    padding: 5%;
   
}
.rank_icon {
    padding-left: 15%;
    width: 200px;
    margin-bottom: -2.5%;
}
}
/* ----------SP/CP切り替え------------ */
@media screen and (max-width: 767px) {
    .pc_only {
        display: none;
    }
} 
@media screen and (min-width: 767px) {
    .sp_only {
        display: none;
    }
}

/*---表ボタン----*/

.hikaku-btn{
    color: #FFF !important;
    border-radius: 5px;
    background-color: #ff7510;
    box-shadow: 0 5px 0 0 #ce6010;
    text-align: center;
    width: 100%;
padding: 2%;
    margin: 15px auto;
    position: relative;
    line-height: 1.3;
}
.hikaku-btn a{
    color: #FFF !important;
    text-decoration: none;
}

/*----------表----------*/
.ranktable{
    margin-top: 4%;
}
.ranktable h2{
    position: relative;
    margin: 8% 0 1%;
}
.ranktable h2::after{
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #2181c7;
}

.comparison-table a:hover {
        text-decoration: underline;
}

.comparison-table{
        width: 98%;
        word-wrap: break-word;
}

.comparison-table table{
        width: 100%;
        table-layout: fixed;
}

.comparison-table td,.comparison-table th{
        vertical-align: top;
        line-height: 1.3;
}

.comparison-table th{
        text-align: center;
        background-color: #68a377;
        color: #fff;
        padding: 1.5% 5px;
        font-weight: bold;
	    display: table-cell;
        vertical-align: middle;
	    z-index: 100;
        border-bottom: 1px solid #fff;
}

.comparison-table td{
        text-align: center;
        border-right: 2px dotted #eee;
        border-bottom: 2px dotted #eee;
        padding: 1.5%;
        background-color: #fff;
        line-height: 1.2;
        vertical-align: middle;
}
.comparison-table td:last-child{
        border-right: none;
}

.comparison-table td img{
        width: 100%;
        margin-top: 0;
}
.img_link{
    font-size: 0.8em;
}
.comparison-table td.bgO{
    background: #efc700;
    color: #fff;
    font-weight: bold;
}
.comparison-table td.bgB{
    background: #4899d4;
    color: #fff;
    font-weight: bold;
}
.comparison-table td.bgB a{
    color: #fff;
}
.comparison-table .bgC{
    background: #ddf1ff;
}
.comparison-table th.bgC{
    background: #ddf1ff;
    border-bottom: 0px solid #ddf1ff;
}
.comparison-table td.bgC{
    background: #ddf1ff;
    padding: 0;
}
.comparison-table .pa0{
    padding: 0;
}
.comparison-table td.co{
    background-color: #fff8e9;
}

/*◎〇▲×*/
.comparison-table td.berry::before{
        content: "◎";
        font-weight: bold;
        color: #ff3a3a;
        font-size: 250%;
}

.comparison-table td.good::before{
        content: "〇";
        color: #9de6f3;
        font-size: 250%;
}

.comparison-table td.usually::before{
        content: "△";
        font-weight: bold;
        color: #ffe20f;
        font-size: 250%;
}

.comparison-table td.not::before{
        content: "×";
        font-weight: bold;
        color: #636363;
    font-size: 250%;
}
.tab-btn{
    background-color: #d84911;
    padding: 8%;
    font-size: 11px;
    color: #fff;
    font-weight: bold;
    border-radius: 5px;
    border: 2px solid #e58863;
}

.tab-btn:hover {
    opacity: 0.7;
}

a.tab-a:hover {
    text-decoration: none;
}

/*表　SP*/
@media (max-width: 767px) { 
.comparison-table{
    display: block;
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
    max-width: 100%;
    margin: 0 auto 0;
}

.comparison-table td{
	width: 106px;
    /*display: inline-block;*/
    white-space: normal;
	/*min-height: 150px*/	/*長い文章や改行が多い場合使用*/
    padding: 0.8%;
}

.comparison-table th{
	padding: 10px;
	position: sticky;
	left: 0;
	z-index: 5;
    width: 45px;
    text-align: center;
    line-height: 1.2;
}
.comparison-table_ttl_bg {
    border-radius: 10px 10px 0 0;
    margin-top: 8%;
    max-width: 90%;
    margin: 10% auto 0;
}
.comparison-table_ttl_inner {
    max-width: 85%;
    margin: 0 auto;
    padding: 5%;
   
}
}

/* cta */
.cta {
	width: 100%;
	margin: auto 0;
}
/*アニメーション*/
.shuffling {
    animation-duration: 1.4s!important;
    -webkit-animation-duration: 1.4s;
    -ms-animation-duration: 1.4s;
    -moz-animation-duration: 1.4s!important;
    -webkit-animation-name: shuffling;
    -moz-animation-name: shuffling;
    -o-animation-name: shuffling;
    animation-name: shuffling;
    -webkit-animation-timing-function: ease-in;
    -moz-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -moz-animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
    -o-animation-iteration-count: infinite;
    -ms-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}
@-moz-keyframes shuffling {
    0% {-moz-transform: skewX(9deg);}
    10% {-moz-transform: skewX(-8deg);}
    20% {-moz-transform: skewX(7deg);}
    30% {-moz-transform: skewX(-6deg);}
    40% {-moz-transform: skewX(5deg);}
    50% {-moz-transform: skewX(-4deg);}
    60% {-moz-transform: skewX(3deg);}
    70% {-moz-transform: skewX(-2deg);}
    80% {-moz-transform: skewX(1deg);}
    90% {-moz-transform: skewX(0deg);}
    100% {-moz-transform: skewX(0deg);}
}
@-o-keyframes shuffling {
    0% {-o-transform: skewX(9deg);}
    10% {-o-transform: skewX(-8deg);}
    20% {-o-transform: skewX(7deg);}
    30% {-o-transform: skewX(-6deg);}
    40% {-o-transform: skewX(5deg);}
    50% {-o-transform: skewX(-4deg);}
    60% {-o-transform: skewX(3deg);}
    70% {-o-transform: skewX(-2deg);}
    80% {-o-transform: skewX(1deg);}
    90% {-o-transform: skewX(0deg);}
    100% {-o-transform: skewX(0deg);}
}
@-webkit-keyframes shuffling {
    0% {-webkit-transform: skewX(9deg);}
    10% {-webkit-transform: skewX(-8deg);}
    20% {-webkit-transform: skewX(7deg);}
    30% {-webkit-transform: skewX(-6deg);}
    40% {-webkit-transform: skewX(5deg);}
    50% {-webkit-transform: skewX(-4deg);}
    60% {-webkit-transform: skewX(3deg);}
    70% {-webkit-transform: skewX(-2deg);}
    80% {-webkit-transform: skewX(1deg);}
    90% {-webkit-transform: skewX(0deg);}
    100% {-webkit-transform: skewX(0deg);}
}
@keyframes shuffling {
    0% {transform: skewX(9deg);}
    10% {transform: skewX(-8deg);}
    20% {transform: skewX(7deg);}
    30% {transform: skewX(-6deg);}
    40% {transform: skewX(5deg);}
    50% {transform: skewX(-4deg);}
    60% {transform: skewX(3deg);}
    70% {transform: skewX(-2deg);}
    80% {transform: skewX(1deg);}
    90% {transform: skewX(0deg);}
    100% {transform: skewX(0deg);}
}

/*voice*/
.voice{
    background-color: #ecf1ed;
    margin: 1% 0;
  padding: 2% 3%;
    line-height: 1.6;
    border: 1px solid #68a377;
}
.voice_list{
    background: #fff8e9;
    border: solid 2px #fb7000;
    padding: 2%;
    border-radius: 10px;
}
.voice h5{
    font-size: 18px;
    font-weight: bold;
    margin: 5px 0 10px;
    padding: 0 0 5px 0;
    border-bottom: 2px solid;
    color: #68a377; 
}

/*---商品詳細---*/
.product{
    width: 96%;
    margin: 20px auto 20px;
    background-color: #fffcea;
    padding: 4% 2%;
}
.hyou{
    font-size: 20px;
    font-weight: bold;
    margin: 40px 0 20px;
    background: #fff2cf;
    padding: 10px 5px;
    border-left: 2px solid #ff7510;
}
.product-lis{
    line-height: 2;
    border: solid 2px #68a377;
    border-radius: 10px;
    margin-top: 20px;
    margin-bottom: 20px;
}
.product-lis h3{
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 2% 0;
    background: #68a377;
    border-radius: 5px 5px 0 0;
    color: #fff;
    text-align: center;
}
.osusume_txt{
    padding: 0% 3% 3% 3%;
}
.product-lis2{
    padding: 3%;
    background-color: #fff;
    line-height: 1.6;
    border: 1px solid #ccc;
    border-radius: 10px;
}

/*表*/
.school-table{
    text-align: center;
    border-collapse: collapse;
    width: 100%;
    /*border: 1px solid #ccc;*/
    margin: 20px 0 20px;
    table-layout: fixed;
    line-height: 1.6;
}
.school-table th {
    background-color: #68a377;
    padding: 5px 0;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    font-weight: bold;
    color: #fff;
    vertical-align: middle;
}
.school-table td {
    padding: 10px 0;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    background-color: #f5f5f5;
    vertical-align: middle;
}

@media (max-width: 767px) {
    .school-table{
        width: 100%;
        line-height: 1.2;
    }
    .school-table td{
        padding: 10px 1%;
        font-size: 0.9em;
    }
    .other_cta{
        padding: 6%;
    }
  .product_no3 h1{
        font-size: 21px;
        font-weight: bold;
        color: #fff;
        background-color: #3ebaa0;
        display: block;
        position: relative;
        height: 92px;
        line-height: 35px;
        text-align: center;
        padding: 3% 40px 0 18px;
        box-sizing: border-box;
    }
    .product_no3 h1::after{
        top: 0;
        right: -2px;
        border-width: 47px 15px 47px 0px;
        border-color: transparent #fffcea transparent transparent;
        border-style: solid;
    }
}    
.red{
    color:#d40203;
}
.mt3{
	margin-top: 30px;
}
.mt4{
	margin-top: 40px;
}
.ttl{
    border-bottom: 3px #f3c59a solid;
    padding: 1px 10px;
}
.fcP{
    color: #f35faa;
    font-weight: bold;
}
.point_ttl{
    background: #eaf5ed;
    padding: 10px 15px;
    border-radius: 10px;
    line-height: 1.5;
    font-size: 17px;
    font-weight: bold;
}

/* PCのみ表示 */
#content::before {
  content: "";
  display: block;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background-image: url(../img/pc_bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}
/* 目次 */
.contents_right {
	position: fixed;
    top: 0;
    right: 0;
    width: 28%;
    height: 100vh;
	background: rgba(255,255,255,.8);
	z-index: 2;
}
.contents_right_box {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 0;
	width: 85%;
}
.contents_right_list {
    margin: 0 auto;
}
.contents_right_ttl {
	display: flex;
    align-items: center;
    font-size:clamp(18px, 2vw, 30px);
    line-height: 1;
	font-weight: bold;
}
.contents_right_ttl:before, .contents_right_ttl:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}
.contents_right_ttl:before {
    margin-right: 1rem;
}
.contents_right_ttl:after {
    margin-left: 1rem;
}
.contents_right_list ul {
	padding: 30px 30px 45px;
	border-bottom: 1px solid #666;
}
.contents_right_list li {
	margin-top: 20px;
}
.contents_right_list li a {
	color: #000;
    text-decoration: none;
	font-weight: bold;
	position: relative;
    overflow: hidden;
    font-size:clamp(12px, 1vw, 16px);
    padding: 5px 10px;
    background: linear-gradient( to right, #30a64e, #30a64e 50%, transparent 50%, transparent) 100% 0 / 201% 100%;
    transition: 0.5s;
}
.contents_right_list li a:hover,
.contents_right_list li a.is-active {
  color: #fff;
  opacity: 1;
  background-position:0 0;
}

.contents_right_btn {
    margin: 0 auto;
	width: 280px;
}

/* 助成金対象ボタン */
.official_btn {
    bottom: 50px;
    left: 70px;
    width: 480px;
    text-align: center;
    z-index: 2;
	position: fixed;
}

/* レスポンシブサイズ調整 */
@media (max-width: 1800px) {
	#content {
	width: calc(680 / 1800 * 100vw);
	}
	.contents_right_list ul {
		padding-top: calc(20 / 1800 * 100vw);
		padding-left: calc(10 / 1800 * 100vw);
		padding-right: calc(10 / 1800 * 100vw);
		padding-bottom: calc(35 / 1800 * 100vw);
}
	.contents_right_list li {
	margin-top: calc(20 / 1800 * 100vw);
}
	.official_btn{
		width: calc(450 / 1800 * 100vw);
		bottom: calc(50 / 1800 * 100vw);
		left: calc(60 / 1800 * 100vw);
	}
}
@media (max-width: 1500px) {
.contents_right_btn {
		width: calc(280 / 1500 * 100vw);
	}
}
	
/* タブレット幅以下非表示 */
@media (max-width: 1023px) {
	.contents_right, .official_btn, #content::before {
		display: none;
	}
}
@media (max-width: 768px) {
	#content {
    width: 100%;
	}
}
.sub{
    font-size: 20px;
    font-weight: bold;
    margin: 40px 0 20px;
    background: #fffcf4;
    padding: 10px 5px;
    border-bottom: dotted 2px #ff7510;
}