@charset "UTF-8";
/* サイト固有スタイル（PC） */
/*--------------------
01.top
02.商品一覧
03.商品詳細
04.ご利用ガイド
05.価格一覧
06.価格表
07.コラム一覧
08.コラム詳細
09.よくある質問
10.お問い合せ
11.ダウンロード
12.キャンセル
13.商品の選び方
14.サンプル
15.会社概要
16.支払い方法について
17.特定商取引法
18.会員について
19.はじめての方へ
20.SNSスクショ
00.その他下層
--------------------*/

/*----------
01.top
----------*/
#top .news_area--announcements,
#top .shipping-schedule-area,
#top .product_area,
#top .scene_area,
#top .guide_area {
margin-bottom: 80px;
}

#top .mv_area .slide_block {
position: relative;
z-index: 1;
}

#top .mv_area .slide_block::before {
content: "";
position: absolute;
z-index: -1;
bottom: -1px;
left: 0;
width: 100%;
height: calc(57% + 1px);
background-color: #F6E9CD;
}

#top .mv_area .slide_block .contents_in{
width: 100%;
max-width: 1280px;
}

#top .mv_area .slide_block .slide_box .img {
border-radius: 5px;
/* border: 1px solid #707070; */
overflow: hidden;
margin: 0 10px;
}

#top .mv_area .slide_block .slide_box .img a {
transition: .3s;
}

#top .mv_area .slide_block .slide_box .img a:hover {
opacity: .8;
}

/* #top .mv_area .slide_block .slide_box .img .wrap {
position: relative;
padding-bottom: 31.3%;
}

#top .mv_area .slide_block .slide_box .img img {
position: absolute;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
} */

#top .mv_area .slide_block .slick-dotted.slick-slider{
margin-bottom: 0;
padding-bottom: 30px;
}

#top .mv_area .slide_block .slick-dots {
display: flex;
align-items: center;
justify-content: center;
margin: 25px 0 0;
}

#top .mv_area .slide_block .slick-dots li{
display: block;
width: 10px;
height: 10px;
border-radius: 50%;
background: none;
margin: 0 7.5px;
padding: 0;
position: relative;
}

#top .mv_area .slide_block .slick-dots li button{
display: block;
width: 10px;
height: 10px;
border: 2px solid #2D2D2D;
border-radius: 50%;
background: none;
margin: 0 7.5px;
position: relative;
font-size: 0;
color: rgba(0,0,0,0);
cursor: pointer;
padding: 0;
margin: 0;
}

#top .mv_area .slide_block .slick-dots li.slick-active button{
background: #2D2D2D;
}

#top .mv_area .link_block {
padding: 13px 0 23px;
background-color: #F6E9CD;
}

#top .mv_area .link_block ul {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

#top .mv_area .link_block ul li {
width: calc((100% - 24px) / 5);
}

#top .mv_area .link_block ul li + li {
margin-left: 6px;
}

#top .mv_area .link_block ul li a {
font-weight: 700;
}

#top .recommend_area {
padding-bottom: 42px;
background-color: #fef5c5;
}

#top .recommend_area .rec_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
width: 103%;
margin: 0 -1.5%;
}

#top .recommend_area .rec_block .rec_box {
width: 33.3333333333%;
padding: 0 1.48%;
}

#top .recommend_area .rec_block .rec_box a {
transition: .3s;
}

#top .recommend_area .rec_block .rec_box a .img {
border-radius: 5px;
border: 1px solid #EAEAEA;
overflow: hidden;
}

#top .recommend_area .rec_block .rec_box a .img img {
transition: .3s;
}

#top .recommend_area .rec_block .rec_box a p {
margin-top: 10px;
font-size: 12px;
font-weight: 700;
line-height: 1.4;
transition: .3s;
}

#top .recommend_area .rec_block .rec_box a:hover .img img {
transform: scale(1.05);
}

#top .recommend_area .rec_block .rec_box a:hover p {
opacity: .7;
}

#top .product_area {
/*margin-top: -100px;*/
padding: 132px 0 40px;
}

#top .product_area .pro_list {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
width: 102.26%;
margin: -26px -1.13% 0;
}

#top .product_area .pro_list li {
width: 16.6666666667%;
margin-top: 26px;
padding: 0 1.1%;
}

#top .product_area .pro_list li a {
transition: .3s;
}

#top .product_area .pro_list li a .img {
position: relative;
padding-bottom: calc(100% - 2px);
border-radius: 5px;
border: 1px solid #EAEAEA;
overflow: hidden;
}

#top .product_area .pro_list li a .img img {
position: absolute;
height: 100%;
object-fit: cover;
transition: .3s;
}

#top .product_area .pro_list li a h3 {
margin-top: 6px;
line-height: 1.4;
text-align: center;
}

#top .product_area .pro_list li a:hover {
opacity: .8;
}

#top .product_area .pro_list li a:hover .img img {
transform: scale(1.05);
}

#top .product_area .btn_ptn02 {
margin-top: 40px;
}

#top .product_area .product_showcase_list {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 30px 30px;
max-width: 1150px;
margin: 0 auto;
}

#top .product_area .product_showcase_list_item--featured {
grid-column: 1 / -1;
}

#top .product_area .product_showcase_card {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
grid-template-rows: auto 1fr;
gap: 0px;
color: #2d2d2d;
}

#top .product_area .product_showcase_card_content {
display: contents;
}

#top .product_area .product_showcase_card_title {
grid-column: 1 / -1;
padding: 9px 18px;
background-color: #ffba00;
font-size: 22px;
font-weight: 700;
line-height: 1.35;
}

#top .product_area .product_showcase_card_image {
grid-column: 1;
grid-row: 2;
aspect-ratio: 1;
overflow: hidden;
}

#top .product_area .product_showcase_card_image img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
transition: transform .3s;
}

#top .product_area .product_showcase_card_details {
grid-column: 2;
grid-row: 2;
display: flex;
flex-direction: column;
align-items: flex-start;
font-size: 16px;
line-height: 1.45;
}

#top .product_area .product_showcase_card_meta,
#top .product_area .product_showcase_card_description,
#top .product_area .product_showcase_card_unit,
#top .product_area .product_showcase_card_price {
margin: 0;
}

#top .product_area .product_showcase_card_description,
#top .product_area .product_showcase_card_unit {
margin-top: 4px;
}

#top .product_area .product_showcase_card_price {
margin-top: 8px;
white-space: nowrap;
}

#top .product_area .product_showcase_card_price strong {
margin-right: 6px;
color: #d81319;
font-size: 32px;
line-height: 1;
}

#top .product_area .product_showcase_card_price span {
font-size: 16px;
}

#top .product_area .product_showcase_card_button {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
min-height: 42px;
margin-top: auto;
padding: 8px 38px 8px 16px;
border: 1px solid #999;
border-radius: 999px;
font-weight: 700;
position: relative;
color: #2d2d2d;
text-decoration: none;
transition: background-color .3s;
}

#top .product_area .product_showcase_card_button::after {
content: "›";
position: absolute;
right: 18px;
font-size: 28px;
font-weight: 400;
line-height: 1;
transition: right .3s;
}

#top .product_area .product_showcase_card_button:hover {
background-color: #f7de60;
}

#top .product_area .product_showcase_card_button:hover::after {
right: 13px;
}

#top .product_area .product_showcase_card_button.is-disabled {
pointer-events: none;
cursor: default;
opacity: .4;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card {
display: block;
position: relative;
min-height: 413px;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_image {
width: 67.5%;
aspect-ratio: 1.88;
min-height: 0;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_content {
display: block;
position: absolute;
z-index: 1;
top: 46px;
left: 51.5%;
width: 48.5%;
box-sizing: border-box;
padding: 24px 26px 30px;
border: 1px solid #a7a7a7;
border-radius: 10px;
background-color: #fff;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_heading {
display: flex;
align-items: center;
gap: 16px;
padding: 0 0 14px;
border-bottom: 1px solid #a7a7a7;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_title {
margin: 0;
padding: 5px 0 5px 10px;
border-left: 8px solid #ffba00;
background: transparent;
font-size: 30px;
font-weight: 700;
line-height: 1.25;
min-height: calc(1.5em + 10px);
display: flex;
align-items: center;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_title > span {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_details {
display: grid;
grid-template-columns: 160px minmax(0, 1fr);
align-items: start;
gap: 10px 22px;
width: 100%;
margin-top: 10px;
padding: 0;
background: transparent;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_tags {
display: flex;
flex-direction: column;
gap: 7px;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_tags span {
padding: 5px 10px;
border: 1px solid #999;
border-radius: 5px;
font-size: 12px;
line-height: 1.1;
text-align: center;
white-space: nowrap;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_price_block {
min-width: 0;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_unit,
#top .product_area .product_showcase_list_item--featured .product_showcase_card_price,
#top .product_area .product_showcase_list_item--featured .product_showcase_card_condition {
margin: 0;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_unit {
font-size: 18px;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_price {
margin-top: 5px;
line-height: 1;
white-space: nowrap;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_price strong {
margin-right: 5px;
color: #e60012;
font-size: 62px;
line-height: .95;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_price span {
font-size: 24px;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_price small {
font-size: 13px;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_condition {
margin-top: 7px;
font-size: 11px;
line-height: 1.35;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_button {
grid-column: 1 / -1;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
min-height: 42px;
margin-top: 4px;
padding: 8px 16px;
border: 0;
border-radius: 8px;
background-color: #e60012;
color: #fff;
font-size: 16px;
font-weight: 700;
text-decoration: none;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_button::after {
content: "";
position: absolute;
right: 14px;
width: 16px;
height: 16px;
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8%200C3.58%200%200%203.58%200%208C0%2012.42%203.58%2016%208%2016C12.42%2016%2016%2012.42%2016%208C16%203.58%2012.42%200%208%200ZM6.76%2012.9C6.39%2013.27%205.79%2013.27%205.42%2012.9C5.05%2012.53%205.05%2011.93%205.42%2011.56L8.98%208L5.42%204.44C5.05%204.07%205.05%203.47%205.42%203.1C5.79%202.73%206.39%202.73%206.76%203.1L11.66%208L6.76%2012.9Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}

#top .product_area .product_showcase_list_item--featured .product_showcase_card_button:hover {
background-color: #be0010;
}

/* 商品ショーケース（通常カード） */
#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card {
display: grid;
grid-template-columns: 180px minmax(0, 1fr);
grid-template-rows: auto auto 1fr;
gap: 10px 22px;
padding: 24px 26px 26px;
border: 1px solid #a7a7a7;
border-radius: 10px;
background-color: #fff;
color: #111;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_heading {
grid-column: 1 / -1;
display: flex;
align-items: center;
gap: 16px;
padding: 0 0 14px;
border-bottom: 1px solid #a7a7a7;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_title {
margin: 0;
padding: 5px 0 5px 10px;
border-left: 8px solid #ffba00;
background: transparent;
font-size: 30px;
font-weight: 700;
line-height: 1.25;
min-height: calc(1.5em + 10px);
display: flex;
align-items: center;
}

@media only screen and (min-width: 1141px) {
    #top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_title-fontsizeajst01{
    font-size: 19px;
    letter-spacing: 1;
    min-height: calc(2.35em + 10px);
    }
    #top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_title-fontsizeajst02{
    font-size: 25px;
    }
}
#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_title > span {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
}

#top .product_area .product_showcase_card_status {
display: flex;
gap: 14px;
margin-left: auto;
font-size: 16px;
line-height: 1;
white-space: nowrap;
}

#top .product_area .product_showcase_card_status span {
padding: 9px 10px;
border: 1px solid #999;
border-radius: 5px;
background: #fff;
}

#top .product_area .product_showcase_card_status span:first-child {
border-color: #e60012;
color: #e60012;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_tags {
grid-column: 1 / -1;
display: flex;
flex-wrap: wrap;
gap: 8px;
}

#top .product_area .product_showcase_card_tags span {
padding: 4px 10px;
border: 1px solid #999;
border-radius: 5px;
font-size: 12px;
line-height: 1;
white-space: nowrap;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_image {
grid-column: 1;
grid-row: 3;
width: 180px;
height: 180px;
aspect-ratio: auto;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_content {
display: block;
grid-column: 2;
grid-row: 3;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_details {
display: flex;
grid-column: auto;
grid-row: auto;
height: 100%;
font-size: 14px;
line-height: 1.35;
}

#top .product_area .product_showcase_card_unit,
#top .product_area .product_showcase_card_condition,
#top .product_area .product_showcase_card_price {
margin: 0;
}

#top .product_area .product_showcase_card_unit {
font-size: 18px;
}

#top .product_area .product_showcase_card_price {
margin-top: 2px;
line-height: 1;
}

#top .product_area .product_showcase_card_price strong {
margin-right: 5px;
font-size: 62px;
line-height: .95;
}

#top .product_area .product_showcase_card_price span {
font-size: 24px;
}

#top .product_area .product_showcase_card_price small {
font-size: 13px;
}

#top .product_area .product_showcase_card_condition {
margin-top: 6px;
font-size: 11px;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_button {
min-height: 42px;
margin-top: auto;
padding: 8px 16px;
border: 0;
border-radius: 8px;
background-color: #e60012;
color: #fff;
font-size: 16px;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_button::after {
content: "";
position: absolute;
right: 14px;
width: 16px;
height: 16px;
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8%200C3.58%200%200%203.58%200%208C0%2012.42%203.58%2016%208%2016C12.42%2016%2016%2012.42%2016%208C16%203.58%2012.42%200%208%200ZM6.76%2012.9C6.39%2013.27%205.79%2013.27%205.42%2012.9C5.05%2012.53%205.05%2011.93%205.42%2011.56L8.98%208L5.42%204.44C5.05%204.07%205.05%203.47%205.42%203.1C5.79%202.73%206.39%202.73%206.76%203.1L11.66%208L6.76%2012.9Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}

#top .product_area .product_showcase_list_item:not(.product_showcase_list_item--featured) .product_showcase_card_button:hover {
background-color: #be0010;
}

#top .product_choice_guide {
display: flex;
align-items: center;
justify-content: center;
gap: 16px;
margin: 58px auto 0;
}

#top .product_choice_guide_image {
display: block;
flex: 0 0 134px;
width: 134px;
height: 102px;
aspect-ratio: 67 / 51;
}

#top .product_choice_guide_image img {
display: block;
width: 100%;
height: 100%;
object-fit: contain;
}

#top .product_choice_guide p {
margin: 0;
font-size: 22px;
font-weight: 700;
line-height: 1.4;
}

#top .product_choice_guide a {
color: #008dbf;
text-decoration: underline;
text-underline-offset: 2px;
}

#top .scene_area {
padding: 60px 0;
}

#top .scene_list {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 24px 18px;
max-width: 1150px;
margin: 0 auto;
}

#top .scene_card {
position: relative;
display: block;
aspect-ratio: 1.78;
overflow: hidden;
border-radius: 16px;
color: #fff;
}

#top .scene_card img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
transform: scale(1.04);
filter: blur(3px);
transition: transform .3s, filter .3s;
}

#top .scene_card_content {
position: absolute;
z-index: 1;
inset: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 24px;
}

#top .scene_card_title {
font-size: 48px;
font-weight: 700;
line-height: 1.2;
text-shadow: 0 2px 4px rgba(0, 0, 0, .25);
}

#top .scene_card_button {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: min(320px, 82%);
min-height: 50px;
margin-top: 34px;
padding: 10px 42px 10px 16px;
border-radius: 999px;
background: #fff;
color: #222;
font-weight: 700;
transition: background-color .3s;
}

#top .scene_card_button::after {
content: "›";
position: absolute;
right: 20px;
font-size: 30px;
font-weight: 400;
line-height: 1;
transition: right .3s;
}

#top .scene_card:hover .scene_card_button {
background-color: #f7de60;
}

#top .scene_card:hover .scene_card_button::after {
right: 15px;
}

#top .scene_card:hover img {
transform: scale(1.08);
filter: none;
}

#top .guide_area {
padding: 50px 0 42px;
background-color: #F6E9CD;
}

#top .date_block--shipping-schedule {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: stretch;
-webkit-align-items: stretch;
-ms-flex-align: stretch;
align-items: stretch;
border: 4px solid #D81319;
border-radius: 5px;
overflow: hidden;
}

#top .shipping-schedule-area .date_block--shipping-schedule {
width: 96%;
max-width: 1150px;
margin: 0 auto;
}

#top .date_block--shipping-schedule + .date_block--shipping-schedule {
margin-top: 20px;
}

#top .date_block--shipping-schedule .st_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
width: 26.1%;
background-color: #D81319;
color: #fff;
text-align: center;
}

#top .date_block--shipping-schedule .st_box .st {
font-size: 32px;
font-weight: 700;
}

#top .date_block--shipping-schedule .st_box .small {
margin-top: 10px;
padding: 0 15px;
font-size: 16px;
font-weight: 700;
line-height: 1.4;
}

#top .date_block--shipping-schedule .st_box .small i {
display: inline-block;
}

#top .date_block--shipping-schedule .date_box {
width: 73.9%;
padding: 8px 0;
background-color: #fff;
text-align: center;
}

#top .date_block--shipping-schedule .date_box .shipping-date {
font-size: 32px;
font-weight: 700;
line-height: 1.4;
}

#top .date_block--shipping-schedule .date_box .shipping-date .pc_display {
display: inline;
}

#top .date_block--shipping-schedule .date_box .shipping-date .em {
display: inline-block;
color: #D81319;
}

#top .date_block--shipping-schedule .date_box .shipping-date .dt {
display: inline-block;
width: 5em;
text-align: left;
}

#top .date_block--shipping-schedule .date_box .shipping-date .em .dt {
width: 6em;
}

#top .date_block--shipping-schedule .date_box .att {
margin-top: 8px;
padding: 0 20px;
font-size: 16px;
font-weight: 700;
line-height: 1.5;
}

#top .date_block--shipping-schedule .date_box .att i {
display: inline-block;
}

#top .guide_area .guide_block {
margin-top: -100px;
padding-top: 128px;
}

#top .guide_area .guide_block ul {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
width: 103%;
margin: -20px -1.5% 0;
}

#top .guide_area .guide_block ul li {
width: 33.3333333333%;
margin-top: 20px;
padding: 0 1.47%;
}

#top .voice_area {
padding: 40px 0 60px;
}

#top .voice_area .btn_ptn02 {
margin-top: 50px;
}

#top .voice_area ul {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

#top .voice_area ul li {
width: 48%;
}

#top .voice_area ul li:nth-child(even) {
margin-left: 4%;
}

#top .voice_area ul li:nth-child(n+3) {
margin-top: 28px;
}

#top .voice_area ul li .tag {
min-height: 1.4em;
margin-bottom: 10px;
font-weight: 700;
line-height: 1.4;
}

#top .voice_area ul li .tag .name + .type {
margin-left: 24px;
}

#top .voice_area ul li a {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-webkit-align-items: flex-start;
-ms-flex-align: start;
align-items: flex-start;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
transition: .3s;
}

#top .voice_area ul li a .img_box {
width: 36.2%;
border-radius: 5px;
border: 1px solid #EAEAEA;
overflow: hidden;
transition: .3s;
}

#top .voice_area ul li a .img_box img {
transition: .3s;
}

#top .voice_area ul li a .txt_box {
width: 59.4%;
}

#top .voice_area ul li a .txt_box .ttl {
font-size: 16px;
font-weight: 700;
line-height: 1.5;
}

#top .voice_area ul li a .txt_box p {
margin-top: 9px;
line-height: 1.4;
}

#top .voice_area ul li a:hover {
opacity: .7;
}

#top .voice_area ul li a:hover .img_box img {
transform: scale(1.05);
}

#top .voice_area .voice_case_slider {
display: block;
max-width: 1150px;
margin: 0 auto;
}

#top .voice_area .voice_case_slider .voice_case_slide {
width: auto;
margin: 0 !important;
padding: 0 17px;
}

#top .voice_area .voice_case_card_image {
aspect-ratio: 1 / 1;
overflow: hidden;
background: #000;
}

#top .voice_area .voice_case_card_image img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

#top .voice_area .voice_case_card_date,
#top .voice_area .voice_case_card_text {
display: block;
font-size: 16px;
line-height: 1.6;
}

#top .voice_area .voice_case_card_date {
margin-top: 18px;
}

#top .voice_area .voice_case_card_text {
margin-top: 2px;
}

#top .voice_area .voice_case_slider .slick-dots {
display: flex;
align-items: center;
justify-content: center;
margin: 42px 0 0;
}

#top .voice_area .voice_case_slider .slick-dots li {
display: block;
width: 10px;
height: 10px;
margin: 0 9px;
padding: 0;
}

#top .voice_area .voice_case_slider .slick-dots button {
display: block;
width: 10px;
height: 10px;
padding: 0;
border: 1px solid #2d2d2d;
border-radius: 50%;
background: #fff;
font-size: 0;
}

#top .voice_area .voice_case_slider .slick-dots .slick-active button {
background: #2d2d2d;
}

#top .voice_area--cases .btn_ptn02 {
max-width: 360px;
height: 60px;
margin: 55px auto 0;
}

/* お客様の声・制作事例 */
#top .voice_area--cases .voice_case_list {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 18px;
max-width: 1150px;
margin: 0 auto;
}

#top .voice_area--cases .voice_case_list_item,
#top .voice_area--cases .voice_case_list_item:nth-child(even),
#top .voice_area--cases .voice_case_list_item:nth-child(n+3) {
width: auto;
margin: 0;
}

#top .voice_area--cases .voice_case_card {
height: 100%;
padding: 20px;
background: #f7f7f7;
}

#top .voice_area--cases .voice_case_card_image {
position: relative;
aspect-ratio: 4 / 3;
overflow: hidden;
background: #d9d9d9;
}

#top .voice_area--cases .voice_case_card_image a {
position: absolute;
inset: 0;
display: block;
}

#top .voice_area--cases .voice_case_card_image img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

#top .voice_area--cases .voice_case_card_tag {
display: inline-block;
margin-top: 12px;
padding: 5px 14px;
border-radius: 5px;
color: #fff;
font-size: 14px;
font-weight: 700;
line-height: 1.2;
}

#top .voice_area--cases .voice_case_card_tag--red {
background-color: #e60012;
}

#top .voice_area--cases .voice_case_card_tag--blue {
background-color: #0094bd;
}

#top .voice_area--cases .voice_case_card_tag--green {
background-color: #20bb54;
}

#top .voice_area--cases .voice_case_card_date {
margin-top: 10px;
color: #777;
font-size: 13px;
line-height: 1.4;
}

#top .voice_area--cases .voice_case_card_text {
margin-top: 14px;
font-size: 16px;
line-height: 1.5;
}

#top .voice_area--cases .voice_case_card_text a {
display: block;
color: inherit;
text-decoration: none;
}

#top .voice_area--cases .voice_case_card_text p {
margin: 0;
}

#top .voice_area--cases .voice_case_card_text p + p {
margin-top: .5em;
}

#top .insta_area {
overflow: hidden;
}

#top .lowpra_point_area {
padding: 70px 0 80px;
}

#top .lowpra_point_area .lowpra_point_list {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 80px;
max-width: 1150px;
margin: 0 auto;
}

#top .lowpra_point_area .lowpra_point_item {
text-align: center;
}

#top .lowpra_point_area .lowpra_point_item img {
display: block;
width: 100%;
max-width: 300px;
height: auto;
margin: 0 auto;
}

#top .lowpra_point_area .lowpra_point_item h3 {
margin-top: 38px;
font-size: 20px;
font-weight: 700;
line-height: 1.7;
}

#top .lowpra_point_area .lowpra_point_item p {
margin-top: 20px;
font-size: 18px;
line-height: 2;
letter-spacing: 0.09em;
text-align: left;
}

#top .insta_area ul {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
width: 1520px;
margin-left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

#top .insta_area ul li {
width: 200px;
}

#top .insta_area ul li + li {
margin-left: 20px;
}

/*wpレビュー調整*/
#top .cr-all-reviews-shortcode .cr-count-row,
#top .cr-all-reviews-shortcode ol.commentlist li .comment-text .meta time,
#top .cr-all-reviews-shortcode .crstar-rating,
#top .cr-all-reviews-shortcode ol li div.comment_container a.iv-comment-product-a{
display: none;
}

#top .cr-all-reviews-shortcode ol.commentlist li .comment-text {
margin: 0;
border: none;
padding: 0;
}

#top .cr-all-reviews-shortcode ol.commentlist li .comment-text .meta{
display: inline-block;
font-size: 14px;
font-weight: 700;
line-height: 20px;
}

#top .cr-all-reviews-shortcode ol.commentlist li .comment-text .cr-rating-product-name {
display: inline-block;
font-size: 14px;
font-weight: 700;
line-height: 20px;
margin-left: 24px;
}

#top .cr-all-reviews-shortcode ol.commentlist{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

#top .cr-all-reviews-shortcode ol li.review{
width: 48%;
margin-bottom: 0;
}

#top .cr-all-reviews-shortcode ol li.review:nth-child(n+3) {
margin-top: 28px;
}

#top .cr-all-reviews-shortcode .comm_wrap{
display: flex;
flex-direction: row-reverse;
align-items: center;
width: 100%;
margin-top: 10px;
}

#top .cr-all-reviews-shortcode .iv-comment-images,
#top .cr-comment-videos {
width: 36.2%;
border-radius: 5px;
border: 1px solid #EAEAEA;
overflow: hidden;
transition: .3s;
margin-right: 4.4%;
}

#top .iv-comment-image {
float: none;
margin: 0;
width: 100%;
border-radius: 0;
overflow: hidden;
border: none;
}

#top div.iv-comment-image img {
display: block;
width: 100%;
height: auto;
object-fit: unset;
}

#top .cr-all-reviews-shortcode .description{
width: 59.4%;
margin: 0 auto 0 0;
}

#top .cr-all-reviews-shortcode ol.commentlist li .comment-text p{
line-height: 1.4;
margin: 0;
}

#top .cr-search-no-reviews{
text-align: center;
font-size: 16px;
font-weight: 700;
padding: 40px 0;
}

/*#top .news_area{
padding: 70px 0 50px;
}*/

#top .news_area--announcements{
position: relative;
}

#top .printing_info_area {
padding: 70px 0 140px;
}
/*
#top .news_area--announcements::before{
content: "";
position: absolute;
z-index: 0;
top: 0;
left: 50%;
width: 100vw;
height: 145px;
transform: translateX(-50%);
background-color: #fef5c5;
}
*/
#top .news_area--announcements .contents_in{
position: relative;
z-index: 1;
background-color: #fff;
}

#top .news_area--announcements .title_ptn01--announcements{
padding-top: 27px;
}

#top .news_area .news_list{
margin: 0 auto 45px;
max-width: 970px;
}

#top .news_area .news_list_item + .news_list_item{
margin-top: 20px;
}

#top .news_area .news_list_item a{
display: block;
position: relative;
padding: 0 85px 20px 10px;
border-bottom: 1px solid #CBCBCB;
}

#top .news_area .news_list_item a::before{
content: "";
display: block;
position: absolute;
width: 31px;
height: 31px;
background: url(../../img/arrow_news.png) no-repeat center/contain;
right: 10px;
bottom: 15px;
transition: .3s;
}

#top .news_area .news_list_item a:hover::before{
right: 0;
}

#top .news_area .news_list_item .news_date{
font-size: 14px;
line-height: 20px;
color: #CBCBCB;
margin-bottom: 7px;
}

#top .news_area .news_list_item .news_ttl{
font-size: 16px;
line-height: 24px;
font-weight: bold;
}

#top .news_area .btn_ptn01{
max-width: 360px;
height: 60px;
margin: 0 auto;
}

#top .review_area .review_scroll { display: flex; flex-wrap: nowrap; gap: 24px; max-width: 1150px; margin: 0 auto; padding: 0 0 14px; overflow-x: scroll; scroll-snap-type: x mandatory; scrollbar-gutter: stable; scrollbar-width: auto; scrollbar-color: #999 #e5e5e5; }
#top .review_area .review_scroll .review_slide { flex: 0 0 calc((100% - 48px) / 3); margin: 0; scroll-snap-align: start; background: #f7f7f7;}
#top .review_area .review_card { display: block; color: #2d2d2d; }
#top .review_area .review_card_image { aspect-ratio: 16 / 9; overflow: hidden; background: #f5f5f5; }
#top .review_area .review_card_image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
#top .review_area .review_card_info{
padding: 1em;
}
#top .review_area .review_card_date, #top .review_area .review_card_title { display: block; font-size: 16px; line-height: 1.6; }
#top .review_area .review_card_title { margin-top: 2px; font-weight: 400; }
#top .review_area .review_card:hover .review_card_image img { transform: scale(1.04); }
#top .review_area .review_scroll::-webkit-scrollbar { height: 12px; }
#top .review_area .review_scroll::-webkit-scrollbar-track { background: #e5e5e5; border-radius: 999px; }
#top .review_area .review_scroll::-webkit-scrollbar-thumb { background: #999; border-radius: 999px; }
#top .review_area .btn_ptn02 { max-width: 360px; height: 60px; margin: 55px auto 0; }

/*----------
02.商品一覧
----------*/
#product_archive > .inner {
max-width: 1150px;
}

#product_archive #bread_crumb {
padding: 20px 0 0;
}

#product_archive #bread_crumb ul{
width: 100%;
max-width: none;
margin: 0 auto;
}

#product_archive .common_header.archive {
padding: 0;
}

#product_archive .common_header.archive h1{
padding: 80px 0 23px;
display: block;
}

#product_archive .common_header.archive h1 span{
font-size: 24px!important;
font-weight: 700;
line-height: 35px;
}

#product_archive .product_loop {
width: 100%;
margin: 0;
}

#product_archive .product_loop .product_item {
width: calc(calc(100% - 70px) / 3);
margin: 0 35px 52px 0;
}

#product_archive .product_loop .product_item:nth-child(3n) {
margin-right: 0;
}

#product_archive .product_item .link:hover{
color: #2D2D2D;
}

#product_archive .product_item .image_wrap {
position: relative;
overflow: hidden;
border-radius: 5px;
border: 1px solid #EAEAEA;
width: 100%;
height: auto;
}

#product_archive .product_item .image_wrap .image{
padding-top: 66.67%;
}

#product_archive .product_item .content_wrap {
padding-top: 10px;
}

#product_archive .product_item .title {
font-size: 14px;
font-weight: 700;
line-height: 20px;
height: auto;
margin: 0 0 15px;
}

#product_archive .product_item .list_txt {
font-size: 12px;
font-weight: 700;
line-height: 20px;
}

/*----------
03.商品詳細
----------*/
.product_detail#main_contents {
max-width: none;
width: 100%;
}

/* 商品詳細の成功・エラー・案内通知を、カートページと同じ本文幅に収める。 */
.product_detail#main_contents > .woocommerce-notices-wrapper:has(.woocommerce-message, .woocommerce-error, .woocommerce-info) {
width: calc(100% - 40px);
max-width: 1000px;
margin: 24px auto 48px;
}

.product_detail#main_contents > .woocommerce-notices-wrapper :is(.woocommerce-message, .woocommerce-error, .woocommerce-info) {
margin: 0;
}

.product_detail .product_ttl{
text-align: center;
font-size: 24px;
font-weight: 700;
line-height: 35px;
margin-bottom: 21px;
}

.product_detail .product_detail_wrap{
display: flex;
align-items: flex-start;
justify-content: space-between;
padding-bottom: 114px;
}

.product_detail .product_detail_contents{
width: calc(100% - 300px);
}

.product_detail .p-entry-product__images {
width: 100%;
}

.product_detail .single_product_info{
width: 280px;
}

.product_detail .product_detail_contents .cnt_step{
margin-bottom: 100px;
}

.product_detail .product_detail_contents .cnt_step .step_ttl{
display: flex;
align-items: center;
font-size: 24px;
font-weight: 700;
line-height: 35px;
margin-bottom: 18px;
}

.product_detail .product_detail_contents .cnt_step .step_ttl .step_num{
background: #FEEC61;
padding: 7px 23px 8px;
border-radius: 5px;
margin-right: 23px;
display: block;
}

.product_detail .product_detail_contents .cnt_step p,
.product_detail .product_detail_contents .cnt_step .radio-group {
font-size: 16px;
font-weight: 400;
line-height: 32px;
}

.product_detail .product_detail_contents .cnt_step .caution_txt {
font-size: 12px;
font-weight: 400;
line-height: 20px;
}

.product_detail .product_detail_contents .cnt_step .price_table01{
width: 100%;
font-size: 16px;
font-weight: 400;
text-align: center;
line-height: 32px;
}

.product_detail .product_detail_contents .cnt_step .price_table01 th{
padding: 10px;
font-weight: 700;
background: #EAEAEA;
border: 1px solid #000;
}

.product_detail .product_detail_contents .cnt_step .price_table01 td{
padding: 10px;
border: 1px solid #000;
}

.product_detail .product_detail_contents .cnt_step.step01 .first_txt{
margin: 25px 0 10px;
}

.product_detail .product_detail_contents .cnt_step.step01 .option_wrap{
    margin-top: 30px;
    font-weight: bold;
}

.product_detail .product_detail_contents .cnt_step.step01 .option_wrap label{
    font-size: 20px;
    font-weight: 700;
    line-height: 29px;
}

.cnt_step.step02 table .input_wrap {
padding: 20px 10px;
vertical-align: middle;
font-size: 16px;
font-weight: bold;
text-align: center;
}
.cnt_step.step02 table .input_wrap .width {
color: #D81319;
}
.cnt_step.step02 table .input_wrap input {
width: 80px;
padding: 10px;
font-size: 14px;
border: 1.5px solid #ccc;
margin: 0 10px;
}
.cnt_step.step02 table .input_wrap .height {
color: #0125F5;
}

.product_detail .product_detail_contents .cnt_step.step03 .radio-group,
.product_detail .product_detail_contents .cnt_step.step05 .radio-group{
display: flex;
}

.product_detail .product_detail_contents .cnt_step.step03 .radio-group{
flex-wrap: wrap;
}

.product_detail .product_detail_contents .cnt_step.step03 .wcpa_radio{
width: calc(calc(100% - 40px) / 3);
margin: 0 20px 20px 0;
border: 1px solid #CCCCCC;
padding: 13px;
}

.product_detail .product_detail_contents .cnt_step.step03 .wcpa_radio label{
font-size: 12px;
font-weight: 700;
}

.product_detail .product_detail_contents .cnt_step.step03 .wcpa_radio:nth-child(3n){
margin-right: 0;
}

.product_detail .product_detail_contents .cnt_step.step04 .input_wrap{
display: flex;
align-items: center;
font-size: 16px;
font-weight: 700;
line-height: 24px;
padding-left: 23px;
}

.product_detail .product_detail_contents .cnt_step.step04 .input_wrap input{
appearance: none;
display: block;
width: 60px;
height: 40px;
background: #fff;
border: 1px solid #707070;
padding: 5px 10px;
margin-right: 12px;
}

.product_detail .product_detail_contents .cnt_step.step05 .radio-group{
justify-content: space-between;
}

.product_detail .product_detail_contents .cnt_step.step05 .wcpa_radio{
width: 48.3%;
border: 1px solid #CCCCCC;
padding: 18px 26px 50px;
}

.product_detail .product_detail_contents .cnt_step.step05 .wcpa_radio label{
font-size: 12px;
font-weight: 700;
line-height: 20px;
}

.product_detail .product_detail_contents .cnt_step.step05 .wcpa_radio p{
font-size: 12px;
font-weight: 400;
line-height: 20px;
max-width: 344px;
margin:17px auto 32px;
min-height: calc(3 * 20px);
}

.product_detail .product_detail_contents .cnt_step.step05 .wcpa_radio .img{
max-width: 344px;
margin: 0 auto;
}

.product_detail .product_detail_contents .cnt_step.step06 .uoload_wrap{
display: flex;
justify-content: space-between;
margin-bottom: 6px;
}

.product_detail .product_detail_contents .cnt_step.step06 .uoload_wrap{
margin-bottom: 6px;
display: flex;
justify-content: space-between;
}

.product_detail .product_detail_contents .cnt_step.step06 .box{
height: 60px;
display: block;
border: 1px solid #999999;
width: calc(100% - 265px);
display: block;
}

.product_detail .product_detail_contents .cnt_step.step06 .uoload_wrap .fileBox{
width: 245px;
}

.product_detail .product_detail_contents .cnt_step.step06 label{
background-color: #D81319;
color: #fff;
line-height: 26px;
font-size: 18px;
padding: 17px 0;
font-weight: 400;
border-radius: 5px;
text-align: center;
display: block;
cursor: pointer;
width: 100%;
}

.product_detail .product_detail_contents .cnt_step.step06 form{
display: none;
}

.product_detail .product_detail_contents .cnt_step.step07 .input_wrap{
width: 293px;
margin-bottom: 6px;
}

.product_detail .product_detail_contents .cnt_step.step07 .input_wrap input{
appearance: none;
display: block;
width: 100%;
height: 60px;
background: #fff;
border: 1px solid #999999;
padding: 5px 10px;
}

.product_detail .product_detail_contents .cnt_step.step07 .textarea_wrap{
margin-top: 41px;
}

.product_detail .product_detail_contents .cnt_step.step07 .textarea_wrap h3{
font-size: 24px;
font-weight: 700;
line-height: 35px;
}

.product_detail .product_detail_contents .cnt_step.step07 .textarea_wrap textarea{
appearance: none;
display: block;
width: 100%;
height: 237px;
background: #fff;
border: 1px solid #999999;
padding: 5px 10px;
}

.product_detail .product_detail_contents .cnt_step.step08 .date_wrap{
display: flex;
justify-content: space-between;
margin-bottom: 21px;
}

.product_detail .product_detail_contents .cnt_step.step08 .date_wrap .normal{
padding: 20px 10px;
border-radius: 5px;
font-size: 28px;
font-weight: 700;
line-height: 40px;
text-align: center;
color: #2D2D2D;
border: 1px solid #2D2D2D;
width: 48.3%;
}

.product_detail .product_detail_contents .cnt_step.step08 .date_wrap .express{
padding: 20px 10px;
border-radius: 5px;
font-size: 28px;
font-weight: 700;
line-height: 40px;
text-align: center;
color: #D81319;
border: 1px solid #D81319;
width: 48.3%;
}

.product_detail .product_detail_contents .cnt_step.step08 .date_wrap .normal span,
.product_detail .product_detail_contents .cnt_step.step08 .date_wrap .express span{
display: inline-block;
}

.product_detail .product_detail_contents .cnt_step.step08 .option_wrap label {
font-size: 20px;
font-weight: 700;
line-height: 29px;
}

.product_detail .product_detail_contents .cnt_step.step08 .caution_txt {
margin-top: 19px;
}

.product_detail .product_detail_contents .estimate_box h2{
font-size: 24px;
font-weight: 700;
line-height: 35px;
text-align: center;
background: #FEEC61;
padding: 22px 10px 23px;
margin-bottom: 18px;
}

.product_detail .product_detail_contents .estimate_box .price_table02{
width: 100%;
font-size: 16px;
line-height: 32px;
}

.product_detail .product_detail_contents .estimate_box .price_table02 th{
padding: 10px;
text-align: center;
width: 24%;
vertical-align: middle;
border: 1px solid #707070;
}

.product_detail .product_detail_contents .estimate_box .price_table02 td{
padding: 10px 10px 10px 38px;
text-align: left;
width: 76%;
border: 1px solid #707070;
}

.product_detail .product_detail_contents .estimate_box .total_group{
margin: 21px 0 45px;
border-bottom: 1px solid #999999;
text-align: right;
padding: 0 14px 18px;
}

.product_detail .product_detail_contents .estimate_box .total_group .per_price{
font-size: 12px;
font-weight: 700;
line-height: 17px;
}

.product_detail .product_detail_contents .estimate_box .total_group .total_price{
font-size: 12px;
font-weight: 700;
line-height: 29px;
color: #D81319;
}

.product_detail .product_detail_contents .estimate_box .total_group .total_price span{
font-size: 20px;
margin: 0 7px;
}

.product_detail .product_detail_contents .estimate_box .btn_group{
display: flex;
align-items: center;
justify-content: space-between;
}

.product_detail .product_detail_contents .estimate_box .cart-required-notice {
margin: 0 0 12px;
color: #D81319;
font-size: 16px;
font-weight: 700;
line-height: 1.5;
}

.product_detail .product_detail_contents .estimate_box .btn_group .single_add_to_cart_button{
width: 49.5%;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: relative;
height: 80px;
border-radius: 5px;
border: none;
background-color: #D81319;
color: #fff;
font-size: 24px;
font-weight: 700;
line-height: 35px;
text-align: center;
}

.product_detail .product_detail_contents .estimate_box .btn_group .single_add_to_cart_button::after {
content: "";
position: absolute;
top: 50%;
right: 21px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width: 8px;
height: 13px;
background: url(../../img/arrow_right01.png) no-repeat center/contain;
-webkit-transition: .3s;
transition: .3s;
}

/* 未入力などでカート追加できない状態 */
.product_detail .product_detail_contents .estimate_box .btn_group .single_add_to_cart_button:disabled,
.product_detail .product_detail_contents .estimate_box .btn_group .single_add_to_cart_button.disabled {
background-color: #D81319;
cursor: not-allowed;
opacity: 0.2;
}

/* 購入可能な時だけ、矢印を右へ動かす */
.product_detail .product_detail_contents .estimate_box .btn_group .single_add_to_cart_button:not(:disabled):not(.disabled):hover {
background-color: #D81319;
}

.product_detail .product_detail_contents .estimate_box .btn_group .single_add_to_cart_button:not(:disabled):not(.disabled):hover::after {
-webkit-transform: translate(4px, -50%);
transform: translate(4px, -50%);
}

.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn {
width: 49.5%;
}

.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn a{
width: 100%;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: relative;
height: 80px;
border-radius: 5px;
border: none;
background-color: #999999;
color: #fff;
font-size: 24px;
font-weight: 700;
line-height: 35px;
text-align: center;
}

.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn a::after {
content: "";
position: absolute;
top: 50%;
right: 21px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width: 8px;
height: 13px;
background: url(../../img/arrow_right01.png) no-repeat center/contain;
-webkit-transition: .3s;
transition: .3s;
}

/* 見積書はカート追加可能になった時だけ発行できる。 */
.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn a.disabled {
background-color: #f7de60;
color: #2d2d2d;
cursor: not-allowed;
pointer-events: none;
opacity: 0.2;
}

.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn a.disabled::after {
background-image: url(../../img/arrow_right02.png);
}

.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn a:not(.disabled) {
background-color: #f7de60;
color: #2d2d2d;
}

.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn a:not(.disabled)::after {
background-image: url(../../img/arrow_right02.png);
}

.product_detail .product_detail_contents .estimate_box .btn_group .estimate_btn a:not(.disabled):hover::after {
-webkit-transform: translate(4px, -50%);
transform: translate(4px, -50%);
}

.product_detail .product_detail_contents .wc-tabs li {
border-color: #CCCCCC;
}

.product_detail .product_detail_contents .wc-tabs li.active {
border-bottom-color: #fff;
}

.product_detail .product_detail_contents .reviews_tab_count {
background: #D81319;
}

.product_detail .product_detail_contents .wc-tab {
border: 1px solid #ccc;
}

.product_detail .product_detail_contents #reviews #comments ol.commentlist li {
background: #fff;
margin: 0 0 20px;
padding: 0 0 20px;
border-radius: 0;
border-bottom: 1px solid #ccc;
}

.product_detail .product_detail_contents #reviews #comments ol.commentlist li .comment-text .comm_wrap {
display: flex;
align-items: center;
width: 100%;
margin-top: 20px;
}


.product_detail .product_detail_contents #reviews #comments ol.commentlist li .comment-text .comm_wrap .iv-comment-images,
.product_detail .product_detail_contents #reviews #comments ol.commentlist li .comment-text .comm_wrap .cr-comment-videos {
width: 25%;
border-radius: 5px;
border: 1px solid #EAEAEA;
overflow: hidden;
transition: .3s;
margin-right: 5%;
}

.product_detail .product_detail_contents #reviews #comments ol.commentlist li .comment-text .comm_wrap .iv-comment-image {
float: none;
margin: 0;
width: 100%;
border-radius: 0;
overflow: hidden;
border: none;
}

.product_detail .product_detail_contents #reviews #comments ol.commentlist li .comment-text .comm_wrap div.iv-comment-image img {
display: block;
width: 100%;
height: auto;
object-fit: unset;
}

.product_detail .product_detail_contents #reviews #comments ol.commentlist li .comment-text .comm_wrap .description{
width: 70%;
margin: 0 auto 0 0;
}

.product_detail .product_detail_contents #reviews #comments ol.commentlist li .comment-text .comm_wrap p{
line-height: 1.4;
margin: 0;
}

.product_detail .product_detail_contents #review_form_wrapper {
background: #fff;
}

.product_detail .product_detail_contents .wc-tab_inner {
background: #fff;
padding: 0;
}

.product_detail .product_detail_contents .p-button {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: relative;
border-radius: 5px;
border: none;
background-color: #D81319;
color: #fff;
font-size: 18px;
font-weight: 700;
line-height: 26px;
text-align: center;
margin: 0 auto;
}

.product_detail .product_detail_contents .cr-upload-local-images{
max-width: 600px;
margin: 0 auto 40px;
}

.product_detail .product_detail_contents #review_form .cr-upload-local-images #cr_review_image,
.product_detail .product_detail_contents .cr-upload-local-images #cr_review_image {
display: none;
}

.product_detail .product_detail_contents #commentform.comment-form .cr-upload-local-images label::before,
.product_detail .product_detail_contents .comment-form .cr-upload-local-images label ::before{
content: "ファイルを選択";
display: block;
width: 200px;
height: 40px;
background: #999999;
color: #fff;
font-size: 14px;
font-weight: 700;
line-height: 40px;
text-align: center;
cursor: pointer;
margin-bottom: 20px;
border-radius: 5px;
}

.product_detail .product_detail_contents#product-351 .tabs.wc-tabs{
display: none!important;
}

.product_detail .product_detail_contents#product-351 #tab-additional_information{
display: none!important;
}

.product_detail .product_detail_contents#product-351 #tab-reviews{
display: block!important;
}

/*-------------
04.ご利用ガイド
-------------*/
#guide {
padding-bottom: 10px;
}

#guide #bread_crumb{
padding-top: 30px;
margin-bottom: 30px;
}

#guide #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

#guide .guide_top{
margin-bottom: 80px;
}

.guide_top ul{
display: flex;
background: #D81319;
border-radius: 5px;
overflow: hidden;
margin-left: 0!important;
}

.guide_top ul li{
width: calc(100% / 7);
background: #D81319;
color: #fff;
font-size: 16px;
font-weight: 700;
line-height: 25px;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
height: 80px;
position: relative;
}

.guide_top ul li.templete{
line-height: 20px;
}

.guide_top ul li.templete span.small_text {
display: block;
width: 100%;
font-size: 10px;
font-weight: 300;
line-height: 1.2;
letter-spacing: -.09em;
transform: scale(.8);
margin-top: -15px;
}

.guide_top ul li::after{
content: "";
position: absolute;
display: block;
width: 20px;
height: 100%;
background: url(../../img/arrow03.png) no-repeat center/100% 100%;
top: 0;
right: -10px;
z-index: 2;
}

.guide_top ul li:last-child::after{
content: none;
}

#guide .cnt_step{
max-width: 980px;
margin: 0 auto 120px;
position: relative;
}

#guide .cnt_step:last-of-type{
margin: 0 auto 160px;
}

#guide .cnt_step::after {
content: "";
position: absolute;
bottom: -85px;
left: 40px;
border: 13px solid transparent;
border-top: 14px solid #D81319;
}

#guide .cnt_step:last-of-type::after {
content: none;
}

#guide .cnt_step .step_ttl{
display: flex;
align-items: center;
font-size: 24px;
font-weight: 700;
line-height: 35px;
margin-bottom: 20px;
}

#guide .cnt_step .step_ttl .small_txt{
font-size: 20px;
}

#guide .cnt_step .step_ttl .step_num{
background: #FEEC61;
padding: 7px 23px 8px;
border-radius: 5px;
margin-right: 23px;
display: block;
}

#guide .cnt_step p{
font-size: 16px;
font-weight: 400;
line-height: 32px;
}

#guide .cnt_step .cnt_box a{
text-decoration: underline;
text-underline-offset: 3px;
color: #D81319;
margin: 0 10px;
transition: .3s;
/* position: relative;
padding-right: 17px; */
}

#guide .cnt_step .cnt_box a:hover{
text-decoration: none;
opacity: .7;
}

/* #guide .cnt_step .cnt_box a::after{
content: "";
position: absolute;
display: inline-block;
width: 7px;
height: 7px;
border-top: 1px solid #D81319;
border-right: 1px solid #D81319;
top: 50%;
right: 0;
transform: translateY(-50%) rotateZ(45deg);
} */

#guide .cnt_step ul{
margin-top: 15px;
}

#guide .cnt_step ul li{
font-size: 14px;
font-weight: 400;
line-height: 25px;
padding-left: 1em;
text-indent: -1em;
}

/*----------
05.価格一覧
----------*/
#price_list {
padding-bottom: 10px;
}

#price_list #bread_crumb{
padding-top: 30px;
margin-bottom: 30px;
}

#price_list #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

#price_list .prcie_list_area{
padding-top: 40px;
}

#price_list .prcie_list_area ul{
flex-wrap: wrap;
}

#price_list .prcie_list_area ul li{
width: calc(calc(100% - 50px) / 3);
margin-right: 25px;
}

#price_list .prcie_list_area ul li:nth-child(3n){
margin-right: 0;
}

#price_list .prcie_list_area ul li:nth-child(n + 4) {
margin-top: 25px;
}

/*--------
06.価格表
--------*/
main.price_detail  {
padding-bottom: 120px;
}

.price_detail  #bread_crumb{
padding-top: 30px;
margin-bottom: 30px;
}

.price_detail  #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

.price_detail  .prcie_list_area{
margin-bottom: 40px;
}

.price_detail  .prcie_list_area ul{
flex-wrap: wrap;
}

.price_detail  .prcie_list_area ul li{
width: calc(calc(100% - 50px) / 3);
margin-right: 25px;
}
.price_detail  .prcie_list_area ul li:nth-child(3n){
margin-right: 0;
}

.price_detail  .prcie_list_area ul li:nth-child(n + 4) {
margin-top: 25px;
}

.price_detail h2{
border-bottom: 2px solid #D81319;
padding-bottom: 7px;
font-size: 26px;
font-weight: 600;
margin: 0 0 35px 0;
}

.price_detail .description_txt{
font-size: 17px;
font-weight: 700;
line-height: 1.8;
}

.price_detail .radio_btn {
appearance: none!important;
position: absolute;
}

.price_detail .tab_label{
display: inline-block;
margin: 0 15px 15px 0;
}

.price_detail .radio_text {
position: relative;
display: flex;
align-items: center;
cursor: pointer;
font-size: 18px;
font-weight: 700;
}

.price_detail .radio_text::before {
content: '';
display: block;
border-radius: 50%;
border: 2px solid #2D2D2D;
width: 20px;
height: 20px;
margin-right: 10px;
}

.price_detail .radio_btn:checked + .radio_text::after {
content: '';
position: absolute;
left: 5.5px;
display: block;
border-radius: 50%;
width: 13px;
height: 13px;
background: #D81319;
}

.price_detail .tabmenu{
position: relative;
height: 500px;
margin-top: 40px;
}

.price_detail .tabmenu .description_txt{
background: #FEEC61;
padding: 5px 10px;
border-radius: 3px;
font-size: 17px;
font-weight: 700;
margin-bottom: 20px;
}

.price_detail .tabmenu .tab_label + .tab_contents{
display: none;
position: absolute;
width: 100%;
top: 150px;
left: 0;
}

.price_detail .tabmenu .tab_label:has(input[type="radio"]:checked) + .tab_contents{
display: block;
}

.price_detail .price_table{
width: 100%;
font-size: 14px;
font-weight: 700;
text-align: center;
line-height: 1.3;
}

.price_detail .price_table th{
padding: 10px;
font-weight: 700;
background: #EAEAEA;
border: 1px solid #000;
vertical-align: middle;
}

.price_detail .price_table td{
padding: 10px;
border: 1px solid #000;
vertical-align: middle;
}

.price_detail .tabmenu .cnt_txt{
font-size: 18px;
font-weight: 700;
line-height: 1.8;
}

.price_detail .tabmenu .cnt_txt ul{
margin-bottom: 20px;
}

.price_detail .tabmenu .cnt_txt ul li{
padding-left: 1em;
text-indent: -1em;
}

.price_detail .tabmenu .cnt_txt .big_txt{
font-size: 35px;
font-weight: 700;
}

.price_detail .tabmenu .cnt_txt .red_txt{
color: #D81319;
}

.price_detail .tabmenu .cnt_txt .discount_txt{
margin-top: 20px;
text-align: center;
}

#price07 .tabmenu,
#price10 .tabmenu {
height: 700px;
}
/*
#price11 .tabmenu{
height: 300px;
} */

/*------------
07.コラム一覧
------------*/
#low_column{
padding-bottom: 120px;
}

#low_column  #bread_crumb{
padding-top: 19px;
margin-bottom: 51px;
}

#low_columnl  #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

#low_column h1{
padding-bottom: 50px;
}

#low_column .column_category{
max-width: 970px;
margin: 0 auto 65px;
}

#low_column .category_list{
flex-wrap: wrap;
}

#low_column .category_list li {
width: calc((100% - 48px) / 4);
margin: 0 16px 0 0;
}

#low_column .category_list li:nth-child(4n){
margin-right: 0;
}

#low_column .category_list li:nth-child(n + 5) {
margin-top: 10px;
}

#low_column .category_list .btn_ptn02 a {
padding: 12px 0;
border: 1px solid #EAEAEA;
background-color: #EAEAEA;
font-size: 14px;
font-weight: 400;
transition: .3s;
}

#low_column .category_list .btn_ptn02 a:hover,
#low_column .category_list .btn_ptn02.all a {
border: 1px solid #FCDD40;
background-color: #FCDD40;
}

#low_column .category_list .btn_ptn02.all a:hover{
border: 1px solid #707070;
}

#low_column .category_list .btn_ptn02 a::after{
content: none;
}

#low_column .column_list{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

#low_column .column_list::after{
content: "";
display: block;
width: 31%;
}

#low_column .column_list li{
width: 31%;
margin-bottom: 40px;
background: #F5F5F5;
border-radius: 5px;
overflow: hidden;
}

#low_column .column_list li a{
transition: .3s;
}

#low_column .column_list li a:hover{
opacity: .7;
}

#low_column .column_list li .column_img{
border-radius: 5px 5px 0 0;
overflow: hidden;
}

#low_column .column_list li .column_img img{
transition: .3s;
}

#low_column .column_list li a:hover .column_img img{
transform: scale(1.2);
}

#low_column .column_list li .text_box {
padding: 20px 15px;
color: #000;
}

#low_column .column_list li .text_box .column_info{
align-items: flex-start;
margin-bottom: 10px;
}

#low_column .column_list li .text_box .date{
width: 100px;
margin-top: 2.5px;
margin-right: 10px;
font-size: 16px;
font-weight: 700;
line-height: 21px;
}

#low_column .column_list li .text_box .categories_list{
width: calc(100% - 92px);
flex-wrap: wrap;
}

#low_column .column_list li .text_box .categories_list li{
width: auto;
display: inline-block;
margin: 0 10px 5px 0;
font-size: 12px;
font-weight: 400;
line-height: 17px;
padding: 2px 10px 4px;
border-radius: 5px;
background: #FCDD40;
}

#low_column .column_list li .column_txt{
margin-top: 10px;
font-size: 16px;
font-weight: 400;
line-height: 1.7;
}

/*------------
08.コラム詳細
------------*/
#column_detail{
padding-bottom: 120px;
}

#column_detail  #bread_crumb{
padding-top: 30px;
margin-bottom: 30px;
}

#column_detail  #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

#column_detail h1{
padding-bottom: 45px;
}

#column_detail .column_contents{
max-width: 1000px;
margin: 0 auto;
}

#column_detail .column_contents h2,
#column_detail .column_contents h3,
#column_detail .column_contents h4,
#column_detail .column_contents h5,
#column_detail .column_contents p,
#column_detail .column_contents .wp-block-image,
#column_detail .column_contents .is-layout-flex,
#column_detail .column_contents ul,
#column_detail .column_contents ol{
margin: 20px auto 35px;
}

#column_detail .column_contents ul{
list-style: disc;
font-size: 15px;
font-weight: 700;
line-height: 1.8;
padding-left: 20px;
}

#column_detail .column_contents ol{
list-style: decimal;
font-size: 15px;
font-weight: 700;
line-height: 1.8;
padding-left: 20px;
}

#column_detail .column_contents h2{
font-size: 24px;
font-weight: 700;
line-height: 1.45;
text-align: center;
}

#column_detail .column_contents h3{
font-size: 24px;
font-weight: 700;
line-height: 1.45;
}

#column_detail .column_contents h4{
font-size: 24px;
font-weight: 700;
line-height: 1.45;
border-bottom: 2px solid #D81319;
padding-bottom: 7px;
}

#column_detail .column_contents h5{
background: #FEEC61;
padding: 5px 10px;
border-radius: 3px;
font-size: 18px;
font-weight: 700;
line-height: 1.45;
}

#column_detail .column_contents p{
font-size: 15px;
font-weight: 700;
line-height: 1.8;
}

#column_detail .column_contents a{
color: #D81319;
text-decoration: underline;
text-underline-offset: 2px;
transition: .3s;
display: inline-block;
}

#column_detail .column_contents a:hover{
text-decoration: none;
opacity: .7;
}

/*-------------
09.よくある質問
-------------*/
#faq #bread_crumb{
padding-top: 19px;
margin-bottom: 50px;
}

#faq  #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

#faq h1{
padding-bottom: 70px;
}

#faq .faq_top,
#faq .contents_area{
max-width: 970px;
margin: 0 auto;
}

#faq .faq_top ul{
flex-wrap: wrap;
}

#faq .faq_top ul li{
width: 23.41%;
margin: 0 2.12% 10px 0;
}

#faq .faq_top ul li:nth-child(4n){
margin: 0 0 10px 0;
}

#faq .faq_top ul .btn_ptn02 a {
padding: 10.3px 0;
border: 1px solid #FEEC61;
font-size: 16px;
font-weight: 400;
}

#faq .faq_top ul .btn_ptn02 a:hover {
border: 1px solid #707070;
}

#faq .faq_top ul .btn_ptn02 a::after,
#faq .faq_top ul .btn_ptn02 a:hover::after {
right: 10px;
transform: translateY(-50%) rotateZ(90deg);
}

#faq .faq_block{
padding-top: 50px;
}

#faq .faq_block:first-child{
padding-top: 60px;
}

#faq .faq_block h3{
border-left: 8px solid #FCDD40;
padding-left: 21px;
margin-bottom: 35px;
font-size: 20px;
font-weight: 700;
color: #2D2D2D;
line-height: 36px;
}

#faq .faq_block h3 br{
display: none;
}

#faq .faq_block .faq_box{
margin-bottom: 35px;
}

#faq .faq_block .faq_box:last-child{
margin-bottom: 0;
}

#faq .faq_block .faq_box .question{
cursor: pointer;
position: relative;
background: #EAEAEA;
border-radius: 5px;
font-size: 16px;
font-weight: 700;
line-height: 28.8px;
color: #000000;
overflow: hidden;
}

#faq .faq_block .faq_box .question::after{
content: "";
position: absolute;
display: block;
right: 20px;
top: 50%;
transform: translateY(-50%) rotateZ(90deg);
width: 8px;
height: 13px;
background: url(../../img/arrow_right02.png) no-repeat center/contain;
transition: .3s;
}

#faq .faq_block .faq_box .question.open::after{
transform: translateY(-50%) rotateZ(270deg);
}

#faq .faq_block .faq_box .question .en{
display: flex;
width: 45px;
align-items: center;
justify-content: center;
background: #FCDD40;
padding: 7px 0 10px;
}


#faq .faq_block .faq_box .question .ttl{
display: flex;
width: calc(100% - 45px);
align-items: center;
padding: 7px 40px 10px 15px;
}

#faq .faq_block .faq_box .answer{
padding-top: 15px;
display: none;
font-size: 16px;
line-height: 28.8px;
color: #000000;
}

#faq .faq_block .faq_box .answer .flex_box{
align-items: flex-start;
}

#faq .faq_block .faq_box .answer .en{
display: block;
text-align: center;
width: 45px;
padding: 0;
font-weight: 700;
}

#faq .faq_block .faq_box .answer .answer_contents{
font-weight: 400;
width: calc(100% - 45px);
padding: 0 0 0 15px;
}

/*-----------
10.お問い合せ
-----------*/
#sns_form #bread_crumb,
#sns_confirm #bread_crumb,
#sns_thanks #bread_crumb,
#contact #bread_crumb,
#confirm #bread_crumb,
#thanks #bread_crumb{
padding-top: 19px;
margin-bottom: 50px;
}

#sns_form #bread_crumb ul,
#sns_confirm #bread_crumb ul,
#sns_thanks #bread_crumb ul,
#contact #bread_crumb ul,
#confirm #bread_crumb ul,
#thanks #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

.contact_page{
max-width: 970px;
margin: 0 auto;
}

.contact_page h1{
padding-bottom: 20px;
}

.contact_page .description{
text-align: center;
margin-bottom: 96px;
font-size: 16px;
font-weight: 400;
line-height: 28.8px;
}

.contact_page .required_mark{
display: inline-block;
background: #FEEC61;
border-radius: 5px;
padding: 2px 10px 4px;
font-size: 12px;
font-weight: 700;
line-height: 17px;
margin: 0 7px;
}

.contact_page .form_wrap dl{
display: flex;
align-items: flex-start;
margin-bottom: 50px;
}

.contact_page .form_wrap dl dt{
width: 250px;
padding: 8px 10px 0;
font-size: 16px;
font-weight: 700;
line-height: 1.4;
}

.contact_page .form_wrap dl dd{
width: calc(100% - 250px);
font-size: 16px;
font-weight: 700;
line-height: 1.4;
}

.contact_page .form_wrap dl dd input,
.contact_page .form_wrap dl dd select,
.contact_page .form_wrap dl dd textarea{
width: 100%;
height: 40px;
background: #fff;
border: 1px solid #CBCBCB;
border-radius: 5px;
padding: 5px 10px;
appearance: none;
}

.contact_page .form_wrap dl dd input[type="file"]{
border: none;
}

.contact_page .form_wrap dl dd .select_wrap{
position: relative;
}

.contact_page .form_wrap dl dd .select_wrap::after{
content: "";
position: absolute;
display: block;
right: 20px;
top: 50%;
transform: translateY(-50%) rotateZ(90deg);
width: 8px;
height: 13px;
background: url(../../img/arrow_right02.png) no-repeat center/contain;
transition: .3s;
}

.contact_page .form_wrap dl.address dd textarea{
height: 90px;
}

.contact_page .form_wrap dl.message dd textarea{
height: 295px;
}

.contact_page .mw_wp_form .error{
margin-top: 8px;
font-size: 12px;
}

.contact_page .form_wrap .form_btn_wrap{
margin-top: 100px;
}

.contact_page .form_wrap .btn_ptn01{
width: 100%;
max-width: 360px;
margin: 0 auto;
}

.contact_page .form_wrap .btn_ptn01 button{
font-family: 'Meiryo';
appearance: none;
display: flex;
align-items: center;
justify-content: center;
position: relative;
width: 100%;
padding: 19px 0 20px;
border-radius: 5px;
background-color: #D81319;
color: #fff;
font-size: 18px;
font-weight: 700;
line-height: 1.2;
text-align: center;
border: none;
cursor: pointer;
}

.contact_page .form_wrap .btn_ptn01 button::after{
content: "";
position: absolute;
top: 50%;
right: 21px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width: 8px;
height: 13px;
background: url(../../img/arrow_right01.png) no-repeat center/contain;
-webkit-transition: .3s;
transition: .3s;
}

.contact_page .form_wrap .btn_ptn01 button:hover::after{
right: 16px;
}

.contact_page .form_btn_wrap_confirm{
display: none;
}

.contact_page .content_bottom{
background: #EAEAEA;
padding: 40px;
margin-top: 100px;
border-radius: 5px;
}

.contact_page .content_bottom ul li{
text-indent: -1em;
padding-left: 1em;
font-size: 14px;
font-weight: 700;
line-height: 2;
}

/*確認ページ*/
.contact_page.confirm .form_wrap dl dd {
padding-top: 10px;
}

.contact_page.confirm .form_wrap dl dd .select_wrap::after{
content: none;
}

.contact_page.confirm .form_wrap .btn_ptn01.back_btn button{
background-color: #999999;
}

.contact_page.confirm .form_wrap .btn_ptn01.back_btn button::after{
right: auto;
left: 21px;
transform: translateY(-50%) rotateZ(180deg);
}

.contact_page.confirm .form_wrap .btn_ptn01.back_btn button:hover::after{
left: 16px;
}

.contact_page.confirm .form_btn_wrap{
display: none;
}

.contact_page.confirm .form_btn_wrap_confirm {
display: flex;
justify-content: space-between;
max-width: 750px;
margin: 100px auto 0;
}

.contact_page.confirm .form_btn_wrap_confirm .btn_ptn01 {
width: 48%;
margin: 0;
}

/*完了ページ*/
#sns_thanks .thanks_txt,
#thanks .thanks_txt{
text-align: center;
font-size: 18px;
font-weight: 700;
line-height: 1.8;
margin: 40px auto 80px;
}

/*-------------
11.ダウンロード
-------------*/
#download #bread_crumb{
padding-top: 19px;
margin-bottom: 50px;
}

#download #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

#download h1{
padding-bottom: 50px;
}

#download .download_top{
margin-bottom: 70px;
}

#download .download_top ul{
flex-wrap: wrap;
}

#download .download_top ul li{
width: 23.8%;
margin: 0 1.6% 10px 0;
}

#download .download_top ul li:nth-child(4n){
margin: 0 0 10px 0;
}

#download .download_top ul .btn_ptn02 a {
padding: 10.3px 0;
border: 1px solid #FEEC61;
font-size: 16px;
font-weight: 400;
}

#download .download_top ul .btn_ptn02 a:hover {
border: 1px solid #707070;
}

#download .download_top ul .btn_ptn02 a::after,
#download .download_top ul .btn_ptn02 a:hover::after {
right: 20px;
transform: translateY(-50%) rotateZ(90deg);
}

#download .templete_box {
margin-bottom: 50px;
}

#download .templete_box .link_point{
margin-top: -100px;
padding-top: 100px;
}

#download .templete_box h2{
border-left: 8px solid #FCDD40;
padding-left: 21px;
margin-bottom: 35px;
font-size: 20px;
font-weight: 700;
color: #2D2D2D;
line-height: 36px;
}

#download .dl_list .dl_item{
padding: 25px 0;
border-bottom: 1px solid #CBCBCB;
align-items: center;
}

#download .dl_list .dl_item .ic{
width: 42px;
margin-right: 21px;
}

#download .dl_list .dl_item .data_info{
width: calc(100% - 292px);
}

#download .dl_list .dl_item .data_info .name{
font-size: 18px;
font-weight: 700;
line-height: 26px;
margin-bottom: 2px;
color: #000;
}

#download .dl_list .dl_item .data_info .size{
font-size: 16px;
font-weight: 700;
line-height: 24px;
color: #CBCBCB;
letter-spacing: .01em;
}

#download .dl_list .dl_item .data_info .size .num{
margin: 0 5px;
color: #000;
}

#download .dl_list .dl_item .btn_dl{
width: 209px;
margin-left: 20px;
}

#download .dl_list .dl_item .btn_dl a{
display: flex;
align-items: center;
justify-content: center;
position: relative;
height: 50px;
width: 100%;
border-radius: 5px;
background-color: #D81319;
color: #fff;
font-size: 14px;
font-weight: 700;
line-height: 3;
text-align: center;
}

#download .dl_list .dl_item .btn_dl a::after{
content: "";
position: absolute;
display: block;
width: 11px;
height: 14px;
background: url(../../img/download/ic_dl.png) no-repeat center/contain;
top: 50%;
right: 14.2px;
transform: translateY(-50%);
}


/*-------------
12.キャンセル
-------------*/
/* page_type01共通start */

.page_type01 h2{
margin: 45px auto 54px;
text-align: center;
font-weight: 700;
font-size: 24px;
line-height: 1;
}

.page_type01 .dl_type01 dt{
font-weight: 700;
font-size: 20px;
line-height: 36px;
border-left: 8px solid #FCDD40;
padding-left: 15px;
margin-bottom: 14px;
}

.page_type01 .dl_type01 dd{
font-size: 16px;
line-height: 28px;
margin-bottom: 37px;
}

/* page_type01共通end */

#cancel dl{
max-width: 970px;
width: 100%;
margin: 0 auto;
}

/*-------------
13.商品の選び方
-------------*/
#choice h2{
margin-bottom: 80px;
}

#choice .cnt_area{
position: relative;
margin: 0 auto 55px;
border-radius: 5px;
background: #F5F5F5;
}

#choice .cnt_area::before{
content: "";
display: block;
position: absolute;
bottom: -25px;
left: 50%;
transform: translateX(-50%);
width: 47px;
height: 40px;
background: url(../../img/arrow05.png) no-repeat center center/100% auto;
}

#choice .cnt_area.area_type02::before{
background-image: url(../../img/arrow06.png);
}

#choice .cnt_area h3{
border-radius: 5px;
background-color: #FEEC61;
padding: 23px 0 19px;
text-align: center;
font-weight: 700;
font-size: 24px;
line-height: 1;
}

#choice .cnt_area h3 .step_num{
display: inline-block;
font-size: 14px;
line-height: 1;
margin: 6px 10px 0 0;
vertical-align: top;
}

#choice .cnt_area .cnt_g{
padding: 20px 50px 25px;
}

#choice .cnt_area .first_text{
text-align: center;
font-size: 16px;
line-height: 28px;
}

#choice .cnt_area .next_btn{
cursor: pointer;
position: relative;
display: block;
max-width: 360px;
width: 100%;
margin: 28px auto 0;
background-color: #D81319;
padding: 16px 0 17px;
text-align: center;
color: #fff;
font-weight: 700;
font-size: 18px;
line-height: 27px;
border-radius: 5px;
}

#choice .cnt_area .next_btn::before{
content: "";
display: block;
width: 6px;
height: 11px;
background: url(../../img/arrow_right01.png) no-repeat left top/100% auto;
position: absolute;
top: 50%;
right: 21px;
transform: translateY(-50%);
}

#choice .cnt_area .modal_btn::before{
transform: translateY(-50%) rotate(90deg);
transition: all .3s;
}

#choice .cnt_area .modal_btn.active::before{
transform: translateY(-50%) rotate(270deg);
}


#choice .cnt_area .modal_box{
display: none;
padding: 33px 0 0;
}

#choice .cnt_area .modal_box dl{
max-width: 871px;
width: 100%;
margin: 0 auto;
}

#choice .cnt_area .modal_box dt{
margin-bottom: 30px;
}

#choice .cnt_area .modal_box dd{
padding-bottom: 38px;
border-bottom: 1px solid #CBCBCB;
margin-bottom: 30px;
}

#choice .cnt_area .modal_box .single_img{
margin-bottom: 30px;
}

#choice .cnt_area .modal_box img{
margin: 0 auto;
}

#choice .cnt_area .modal_box .img_box{
display: flex;
align-items: start;
justify-content: space-between;
margin: 0 auto 30px;
}

#choice .cnt_area .modal_box .img_box img+span{
background-color: #EAEAEA;
display: block;
text-align: center;
max-width: 106px;
width: 100%;
margin: 10px auto 0;
padding: 7px 10px 8px;
font-weight: 700;
font-size: 20px;
}

#choice .cnt_area .modal_box .list_type01 li{
font-size: 16px;
line-height: 28px;
text-indent: -1em;
margin-left: 1em;
}

#choice .cnt_area .modal_box p{
font-size: 14px;
line-height: 25px;
}

#choice .cnt_area .cnt_g .table_ptn01{
background-color: #fff;
max-width: 870px;
width: 100%;
margin: 0 auto;
font-size: 16px;
}

#choice .cnt_area .cnt_g .table_ptn01 tr{
border-bottom: 2px solid #F5F5F5;
}

#choice .cnt_area .cnt_g .table_ptn01 tr:last-child{
border-bottom: none;
}

#choice .cnt_area .cnt_g .table_ptn01 th{
width: 168px;
background-color: #999999;
padding: 18px 0 17px;
text-align: center;
color: #fff;
font-weight: 700;
vertical-align: middle;
}

#choice .cnt_area .cnt_g .table_ptn01 td{
padding: 18px 25px 17px;
font-size: 14px;
line-height: 26px;
}

#choice .cnt_area .cnt_g .table_ptn01 .pay_img{
max-width: 340px;
width: 100%;
margin-bottom: 10px;
}

#choice .cnt_area .cnt_g .table_ptn01 .big_text{
font-size: 16px;
}

#choice .cnt_area .cnt_g .table_ptn01 .small_text{
font-size: 13px;
}

#choice .cnt_area .cnt_g .table_ptn01 .strong_text{
font-weight: 700;
}

#choice .cnt_area .cnt_g .table_ptn01 dl .dl_div{
display: flex;
align-items: start;
}

#choice .cnt_area .cnt_g .table_ptn01 dl .dl_div dt{
width: 85px;
}

#choice #step01 .modal_box .dl_div:nth-of-type(5) .img_box{
max-width: 771px;
width: 100%;
}

#choice #step01 .modal_box .dl_div:nth-of-type(6) .img_box{
max-width: 712px;
width: 100%;
}

#choice #step01 .modal_box .dl_div:nth-of-type(7) .img_box{
max-width: 598px;
width: 100%;
}

#choice #step01 .modal_box .dl_div:nth-of-type(8) .img_box{
max-width: 649px;
width: 100%;
}

#choice #step07{
margin-bottom: 0;
}

#choice #step07::before{
content: none;
}

/*-----------
14.サンプル
-----------*/
#sample h2{
margin-bottom: 80px;
}

#sample .cnt_area{
position: relative;
margin: 0 auto 55px;
border-radius: 5px;
background: #F5F5F5;
}

#sample .cnt_area h3{
border-radius: 5px;
background-color: #FEEC61;
padding: 23px 0 19px;
text-align: center;
font-weight: 700;
font-size: 24px;
line-height: 1;
}

#sample .cnt_area .cnt_g{
padding: 20px 50px 35px;
}

#sample .cnt_area .first_text{
text-align: center;
font-size: 16px;
line-height: 28px;
}

#sample .cnt_area .img{
max-width: 300px;
width: 100%;
margin: 0px auto 25px;
}

#sample .cnt_area .next_btn{
position: relative;
display: block;
max-width: 420px;
width: 100%;
margin: 28px auto 0;
background-color: #D81319;
padding: 16px 0 17px;
text-align: center;
color: #fff;
font-weight: 700;
font-size: 18px;
line-height: 27px;
border-radius: 5px;
}

#sample .cnt_area .next_btn::before{
content: "";
display: block;
width: 6px;
height: 11px;
background: url(../../img/arrow_right01.png) no-repeat left top/100% auto;
position: absolute;
top: 50%;
right: 21px;
transform: translateY(-50%);
}

/*---------
15.会社概要
----------*/
#company .table_ptn01{
background-color: #fff;
max-width: 870px;
width: 100%;
margin: 0 auto;
font-size: 16px;
border: 2px solid #F5F5F5;
}

#company .cnt_area .table_ptn01 tr{
border-bottom: 2px solid #F5F5F5;
}

#company .cnt_area .table_ptn01 tr:last-child{
border-bottom: none;
}

#company .cnt_area .table_ptn01 th{
width: 168px;
background-color: #999999;
padding: 18px 0 17px;
text-align: center;
color: #fff;
font-weight: 700;
vertical-align: middle;
}

#company .cnt_area .table_ptn01 td{
padding: 18px 25px 17px;
font-size: 14px;
line-height: 26px;
}

/*--------------
16.支払いについて
--------------*/
#howto_pay{
max-width: 970px;
margin: 0 auto;
}

#howto_pay .pay_top ul{
flex-wrap: wrap;
justify-content: center;
}

#howto_pay .pay_top ul li{
width: 19%;
margin: 0 1.25% 10px 0;
}

#howto_pay .pay_top ul li:nth-child(5n){
margin: 0 0 10px 0;
}

#howto_pay .pay_top ul .btn_ptn02 a {
padding: 10.3px 0;
border: 1px solid #FEEC61;
font-size: 14px;
font-weight: 400;
}

#howto_pay .pay_top ul .btn_ptn02 a:hover {
border: 1px solid #707070;
}

#howto_pay .pay_top ul .btn_ptn02 a::after,
#howto_pay .pay_top ul .btn_ptn02 a:hover::after {
right: 10px;
transform: translateY(-50%) rotateZ(90deg);
}

#howto_pay .cnt_area{
position: relative;
margin: 0 auto 55px;
border-radius: 5px;
background: #F5F5F5;
}

#howto_pay .cnt_area:first-child {
margin: 60px auto 55px;
}

#howto_pay .cnt_area h3{
border-radius: 5px;
background-color: #FEEC61;
padding: 23px 0 19px;
text-align: center;
font-weight: 700;
font-size: 24px;
line-height: 1;
}

#howto_pay .cnt_area h4{
font-weight: 700;
font-size: 20px;
line-height: 36px;
border-left: 8px solid #FCDD40;
padding-left: 15px;
margin-bottom: 14px;
}

#howto_pay .cnt_area h3 .step_num{
display: inline-block;
font-size: 14px;
line-height: 1;
margin: 6px 10px 0 0;
vertical-align: top;
}

#howto_pay #block01.cnt_area .paid-invitation-template h3 {
border-radius: 0;
background-color: #fff;
line-height: inherit;
}

#howto_pay #block01.cnt_area figure img {
margin: 0 auto;
}

#howto_pay .cnt_area .cnt_g{
padding: 20px 50px 25px;
}

#howto_pay .cnt_area p{
font-size: 16px;
line-height: 28px;
}

#howto_pay #block01.cnt_area .paid-invitation-template p {
line-height: inherit;
}

#howto_pay .cnt_area#block03 p:not(:last-of-type){
margin-bottom: 40px;
}

#howto_pay .cnt_area p .bold{
font-weight: 700;
}

#howto_pay .cnt_area .first_text{
text-align: center;
font-size: 16px;
line-height: 28px;
}

#howto_pay .cnt_area#block05 .first_text{
text-align: left;
}

#howto_pay .cnt_area .cnt_img{
max-width: 560px;
margin: 30px 0 0;
}

#howto_pay .cnt_area .cnt_g .table_wrap{
margin: 25px 0;
max-width: 600px;
}

#howto_pay .cnt_area .cnt_g .table_ptn01{
background-color: #fff;
max-width: 870px;
width: 100%;
margin: 0 auto;
font-size: 16px;
}

#howto_pay .cnt_area .cnt_g .table_ptn01 tr{
border-bottom: 2px solid #F5F5F5;
}

#howto_pay .cnt_area .cnt_g .table_ptn01 tr:last-child{
border-bottom: none;
}

#howto_pay .cnt_area .cnt_g .table_ptn01 th{
background-color: #999999;
padding: 18px 0 17px;
text-align: center;
color: #fff;
font-weight: 700;
vertical-align: middle;
}

#howto_pay .cnt_area .cnt_g .table_ptn01 th:first-child{
width: 168px;
}

#howto_pay .cnt_area .cnt_g .table_ptn01 th + th{
border-left: 2px solid #F5F5F5;
}

#howto_pay .cnt_area .cnt_g .table_ptn01 td{
padding: 18px 25px 17px;
font-size: 14px;
line-height: 26px;
text-align: center;
border-left: 2px solid #F5F5F5;
}

#howto_pay .cnt_area .cnt_g .step_ttl{
display: flex;
align-items: center;
font-size: 18px;
font-weight: 700;
line-height: 25px;
margin-bottom: 18px;
}

#howto_pay .cnt_area .cnt_g .step_ttl .step_num{
background: #FEEC61;
padding: 2px 10px 3px;
border-radius: 5px;
margin-right: 10px;
display: block;
}

#howto_pay .cnt_area .next_btn{
cursor: pointer;
position: relative;
display: block;
max-width: 360px;
width: 100%;
margin: 28px auto 0;
background-color: #D81319;
padding: 16px 0 17px;
text-align: center;
color: #fff;
font-weight: 700;
font-size: 18px;
line-height: 27px;
border-radius: 5px;
}

#howto_pay .cnt_area .next_btn::before{
content: "";
display: block;
width: 6px;
height: 11px;
background: url(../../img/arrow_right01.png) no-repeat left top/100% auto;
position: absolute;
top: 50%;
right: 21px;
transform: translateY(-50%);
}

#howto_pay .cnt_area .modal_btn::before{
transform: translateY(-50%) rotate(90deg);
transition: all .3s;
}

#howto_pay .cnt_area .modal_btn.active::before{
transform: translateY(-50%) rotate(270deg);
}

#howto_pay .cnt_area .touroku_wrap{
text-align: center;
margin-top: 20px;
}

#howto_pay .cnt_area .touroku_wrap a{
display: inline-block;
font-weight: 700;
border-bottom: 1px solid #2D2D2D;
transition: .3s;
}

#howto_pay .cnt_area .touroku_wrap a:hover{
border-bottom: 1px solid rgba(0,0,0,0);
}

#howto_pay .cnt_area .modal_box{
display: none;
padding: 33px 0 0;
}

/*-------------
17.特定商取引法
-------------*/
#contract .table_ptn01{
background-color: #fff;
max-width: 870px;
width: 100%;
margin: 0 auto;
font-size: 16px;
border: 2px solid #F5F5F5;
}

#contract .cnt_area .table_ptn01 tr{
border-bottom: 2px solid #F5F5F5;
}

#contract .cnt_area .table_ptn01 tr:last-child{
border-bottom: none;
}

#contract .cnt_area .table_ptn01 th{
width: 168px;
background-color: #999999;
padding: 18px 0 17px;
text-align: center;
color: #fff;
font-weight: 700;
vertical-align: middle;
}

#contract .cnt_area .table_ptn01 td{
padding: 18px 25px 17px;
font-size: 14px;
line-height: 26px;
}

#contract .cnt_area .table_ptn01 a{
text-decoration: underline;
text-underline-offset: 3px;
}

#contract .cnt_area .table_ptn01 a:hover{
text-decoration: none;
}

/*-------------
18.会員について
-------------*/
#member #bread_crumb{
padding-top: 20px;
margin: 0;
}

#member #bread_crumb ul {
max-width: 1150px;
}

#member h2{
margin: 50px 0 25px;
}

#member .first_txt{
max-width: 970px;
font-size: 16px;
font-weight: 400;
line-height: 2;
text-align: center;
margin: 0 auto 50px;
}

#member .cnt_box{
max-width: 970px;
margin: 0 auto 50px;
justify-content: space-between;
}

#member .cnt_box .cnt_g{
width: 19%;
max-width: 170px;
}

#member .cnt_box .cnt_g .txt{
text-align: center;
margin-top: 20px;
font-size: 14px;
font-weight: 400;
line-height: 25px;
}

#member .cnt_box .cnt_g .txt .bold{
font-weight: 700;
display: inline-block;
}

#member .btn_ptn01{
max-width: 360px;
height: 60px;
margin: 0 auto;
}

/*---------------
19.はじめての方へ
---------------*/
#bread_crumb:has(+ .cnt_area01.beginners) {
padding: 20px 0 0;
}

.cnt_area01.beginners{
background: #fef5c5;
padding: 30px 0;
margin-top: 50px;
}

.cnt_area01.beginners .cnt_box{
max-width: 970px;
border-radius: 25px;
overflow: hidden;
}

.cnt_area01.beginners .cnt_box .cnt_left{
width: 45%;
background: #fcfcfc;
padding: 45px 27px;
display: flex;
align-items: center;
justify-content: center;
}

.cnt_area01.beginners .cnt_box .cnt_right{
width: 55%;
background: #fff;
display: flex;
flex-direction: column;
justify-content: center;
padding: 45px 20px 45px 50px;
}

.cnt_area01.beginners .cnt_box .cnt_right h3{
font-size: 24px;
font-weight: 700;
line-height: 35px;
margin-bottom: 25px;
}

.cnt_area01.beginners .cnt_box .cnt_right p{
font-size: 16px;
font-weight: 400;
line-height: 2;
}

/*  初めての方へ保有設備の追加CSS  */
.cnt_area01.beginners .cnt_box .cnt_up{
width: 100%;
background: #fff;
display: flex;
flex-direction: column;
justify-content: center;
padding: 45px 20px 20px 20px;
}

.cnt_area01.beginners .cnt_box .cnt_up h3{
font-size: 24px;
font-weight: 700;
text-align: center;
line-height: 35px;
margin-bottom: 25px;
}

.cnt_area01.beginners .cnt_box .cnt_up p{
font-size: 16px;
font-weight: 400;
line-height: 2;
margin-left: 90px;
margin-right: 90px;
}

.cnt_area01.beginners .cnt_box .cnt_down{
width: 100%;
background: #fff;
display: flex;
flex-direction: column;
justify-content: center;
padding: 20px 20px 20px 20px;
}

.cnt_area01.beginners .cnt_box .cnt_down h3{
font-size: 24px;
font-weight: 700;
text-align: center;
line-height: 35px;
margin-bottom: 25px;
}

.cnt_area01.beginners .cnt_box .cnt_down p{
font-size: 16px;
font-weight: 400;
line-height: 2;
margin-left: 90px;
margin-right: 90px;
}

.cnt_area01.beginners .cnt_box .cnt_down_device{
width: 100%;
background: #fff;
display: flex;
flex-direction: row;
justify-content: space-between;
padding: 10px 0px 20px 0px;
}

.cnt_area01.beginners .cnt_box .cnt_down_device p{
font-size: 12px;
font-weight: 400;
line-height: 2;
margin-left: 10px;
margin-right: 10px;
text-align: center;
}

.img_small{
width: 200px;
padding: 10px;
flex: 1;
}

.img_big{
width: 220px;
padding: 10px;
flex: 1;
}

/*  初めての方へ保有設備の追加CSS  */

/*-------------
20.SNSスクショ
-------------*/
#sns_shot{
padding-bottom: 60px;
}

#sns_shot  #bread_crumb{
padding-top: 20px;
margin-bottom: 50px;
}

#sns_shot #bread_crumb ul{
width: 100%;
max-width: 1150px;
}

#sns_shot h2{
padding-bottom: 50px;
}

#sns_shot .sns_list{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

#sns_shot .sns_list::after{
content: "";
display: block;
width: 31%;
}

#sns_shot .sns_list li{
width: 31%;
margin-bottom: 40px;
background: #F5F5F5;
border: 1px solid #F5F5F5;
border-radius: 5px;
overflow: hidden;
}

#sns_shot .sns_list li .sns_img{
border-radius: 5px 5px 0 0;
overflow: hidden;
/* position: relative;
padding-bottom: 31.3%; */
}

/* #sns_shot .sns_list li .sns_img img{
position: absolute;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
} */


#sns_shot .sns_list li .sns_txt{
padding: 20px 15px;
font-size: 14px;
font-weight: 400;
line-height: 1.7;
}

/*-----------
00.お知らせ
-----------*/
#news_page .title_ptn01{
padding-bottom: 45px;
}

#news_page .news_contents{
padding-bottom: 50px;
}

#news_page .news_contents .news_list{
margin: 0 auto 50px;
max-width: 970px;
}

#news_page .news_contents .news_list_item + .news_list_item{
margin-top: 20px;
}

#news_page .news_contents .news_list_item a{
display: block;
position: relative;
padding: 0 85px 20px 10px;
border-bottom: 1px solid #CBCBCB;
}

#news_page .news_contents .news_list_item a::before{
content: "";
display: block;
position: absolute;
width: 31px;
height: 31px;
background: url(../../img/arrow_news.png) no-repeat center/contain;
right: 10px;
bottom: 15px;
transition: .3s;
}

#news_page .news_contents .news_list_item a:hover::before{
right: 0;
}


#news_page .news_contents .news_list_item .news_date{
font-size: 14px;
line-height: 20px;
color: #CBCBCB;
margin-bottom: 7px;
}

#news_page .news_contents .news_list_item .news_ttl{
font-size: 16px;
line-height: 24px;
font-weight: bold;
}

/*-------------
00.お知らせ詳細
-------------*/
#news_detail .cnt_area{
padding: 50px 0;
max-width: 970px;
margin: 0 auto;
}

#news_detail .news_ttl{
padding-bottom: 25px;
margin-bottom: 50px;
border-bottom: 1px solid #CBCBCB;
}

#news_detail .news_ttl h1{
font-size: 24px;
font-weight: bold;
line-height: 35px;
margin-bottom: 15px;
}

#news_detail .news_ttl .date{
font-size: 14px;
line-height: 20px;
color: #CBCBCB;
}

#news_detail .detail_contents{
line-height: 30px;
padding-bottom: 50px;
margin-bottom: 50px;
border-bottom: 1px solid #CBCBCB;
}

#news_detail .detail_contents img{
max-width: 637px;
margin: 0 auto;
}

#news_detail .detail_contents p + p{
margin-top: 50px;
}

#news_detail .back_btn{
max-width: 360px;
height: 60px;
margin: 0 auto;
}

#news_detail .back_btn a{
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
text-align: center;
position: relative;
font-size: 18px;
line-height: 1.2;
font-weight: bold;
color: #fff;
background: #999999;
border-radius: 5px;
}

#news_detail .back_btn a::after {
content: "";
position: absolute;
top: 50%;
left: 24.5px;
transform: translateY(-50%) rotateZ(180deg);
width: 8px;
height: 13px;
background: url(../../img/arrow_right01.png) no-repeat center/contain;
-webkit-transition: .3s;
transition: .3s;
}

#news_detail .back_btn a:hover::after {
left: 18px;
}

.pagination_item a, .pagination_item span {
display: inline-block;
min-width: 34px;
height: 34px;
line-height: 34px;
font-size: 14px;
text-align: center;
color: #000!important;
background: #fff;
border-bottom: none;
border-radius: 50%;
margin: 0 8px;
}

.pagination_item span{
background: #FCDD40;
}

.pagination_item a{
color: #CBCBCB!important;
}








/*-----------
00.その他下層
-----------*/
.style_lp .blank a::before{
content: "";
display: inline-block;
width: 14px;
height: 14px;
background: url(../../img/blank01.png) no-repeat center /contain;
margin: 0 5px 0 0;
}

/* .style_lp .bottom_link a{
color: #D81319!important;
}

.style_lp .bottom_link a::before{
background: url(../../img/blank02.png) no-repeat center /contain;
} */

/*データ入稿の流れ*/
#guide_flow_area{
margin-bottom: 75px;
}

#guide_flow_area .flow_block{
position: relative;
margin: 0 auto 58px;
border-radius: 5px;
background: #F5F5F5;
}

#guide_flow_area .flow_block::before {
content: "";
display: block;
position: absolute;
bottom: -25px;
left: 50%;
transform: translateX(-50%);
width: 47px;
height: 40px;
background: url(../../img/arrow05.png) no-repeat center center/100% auto;
}

#guide_flow_area .flow_block:last-child::before {
content: none;
}

#guide_flow_area .flow_block h3 {
border-radius: 5px;
background-color: #FEEC61;
padding: 23px 0 19px;
text-align: center;
font-weight: 700;
font-size: 24px;
line-height: 1;
margin: 0;
border: none;
}

#guide_flow_area .flow_block h3 .num {
display: inline-block;
font-size: 14px;
line-height: 1;
margin: 5px 10px 0 0;
vertical-align: top;
}

#guide_flow_area .flow_block .cnt_g {
padding: 20px 50px 25px;
}

#guide_flow_area .flow_block .cnt_g .first_text,
#guide_flow_area .flow_block .cnt_g .last_text.txt {
font-size: 16px;
line-height: 24px;
text-align: center;
margin-bottom: 15px;
}

#guide_flow_area .flow_block.cnt_area03 .cnt_g .last_text {
font-size: 12px;
line-height: 20px;
text-align: left;
padding-left: 1em;
text-indent: -1em;
margin: 0;
}

#guide_flow_area .flow_block .cnt_g .first_text .num_txt{
display: inline-block;
width: 20px;
height: 20px;
background: #fff;
border-radius: 50%;
margin: 0 5px 0 0;
font-size: 14px;
line-height: 21px;
text-align: center;
}

#guide_flow_area .flow_block .cnt_g .cnt_img{
margin-bottom: 20px;
border-radius: 5px;
overflow: hidden;
}

#guide_flow_area .flow_block .cnt_g .table_ptn01 + .cnt_img{
margin-top: 27px;
}

#guide_flow_area .flow_block .cnt_g .btn_ptn01{
max-width: 360px;
height: 60px;
margin: 0 auto;
}

#guide_flow_area .flow_block .cnt_g .btn_ptn01 a{
color: #fff;
}

#guide_flow_area .flow_block .cnt_g .table_ptn01 {
background-color: #fff;
width: 100%;
font-size: 16px;
line-height: 24px;
border-radius: 5px;
overflow: hidden;
}

#guide_flow_area .flow_block .cnt_g .table_ptn01 tr {
border-bottom: 2px solid #F5F5F5;
}

#guide_flow_area .flow_block .cnt_g .table_ptn01 tr:last-child {
border-bottom: none;
}

#guide_flow_area .flow_block .cnt_g .table_ptn01 th {
width: 168px;
background-color: #999999;
padding: 14px 0;
text-align: center;
color: #fff;
font-weight: 700;
vertical-align: middle;
border: none;
}

#guide_flow_area .flow_block .cnt_g .table_ptn01 td {
padding: 14px 25px;
text-align: left;
border: none;
}

/*注文完了画面*/
.woocommerce-order .thanks_txt_box{
text-align: center;
padding: 50px 20px;
background: #F5F5F5;
margin-bottom: 70px;
}

.woocommerce-order .thanks_txt_box h2{
text-align: center;
font-size: 24px;
font-weight: 700;
line-height: 35px;
margin-bottom: 20px;
}

.woocommerce-order .thanks_txt_box .thanks_txt{
text-align: center;
font-size: 16px;
font-weight: 400;
line-height: 24px;
margin-bottom: 35px;
}

/* .woocommerce-order .thanks_txt_box p a{
text-decoration: underline;
transition: .3s;
}

.woocommerce-order .thanks_txt_box p a:hover{
text-decoration: none;
opacity: .7;
} */

.woocommerce-order .thanks_txt_box p{
margin-bottom: 0;
}

.woocommerce-order .thanks_txt_box .btn_ptn01{
max-width: 360px;
height: 60px;
margin: 8px auto 20px;
}

.woocommerce-order .thanks_txt_box .btn_ptn01:last-child{
margin: 45px auto 0;
}

/* 制作事例のタイトル帯 */
section.subtitle {
width: 100vw;
margin-top: 20px;
margin-left: calc(-50vw + 50%);
position: relative;
background: #fff9c1;
}

.Inner {
max-width: 1150px;
margin: 0 auto;
padding: 0 20px;
}

section.subtitle .Inner {
display: flex;
align-items: center;
justify-content: center;
min-height: 180px;
font-size: 25px;
font-weight: bold;
line-height: 1.5;
}

/* 自由ページ03のタイトルを制作事例のタイトル帯に合わせる */
.page_type01.page_template03 > section.subtitle .Inner h2 {
margin: 0;
font: inherit;
text-align: left;
}

/* 制作事例詳細 */
.s_case_Img figure {
margin-bottom: 50px;
}

.s_case_txt table {
margin-bottom: 50px;
}

.s_case_txt table th {
background: #fffac4;
padding: 20px;
text-align: left;
width: 35%;
}

.s_case_txt table td {
line-height: 2;
}

#column_detail .column_contents .s_case_txt h3 {
border-bottom: 2px solid #f00;
padding-bottom: 20px;
margin-bottom: 20px !important;
}

/* 制作事例一覧 */
.case_contents h3 {
margin: 0 0 50px;
font-size: 25px;
font-weight: 700;
text-align: center;
}

.case_head {
padding: 50px 0;
}

.case_head ul,
ul.case_list {
display: flex;
flex-wrap: wrap;
}

.case_head ul li {
width: 19%;
margin: 0 0.5% 20px;
}

.case_head ul li a {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 50px;
border: 4px solid #fffac4;
border-radius: 50px;
font-weight: 700;
}

ul.case_list li {
position: relative;
width: calc((100% - 40px) / 3);
margin-right: 20px;
margin-bottom: 20px;
padding: 20px;
background: #eee;
}

ul.case_list li:nth-child(3n) {
margin-right: 0;
}

ul.case_list li figure {
margin-bottom: 20px;
}

ul.case_list li figure img {
display: block;
width: 100%;
height: 100%;
aspect-ratio: 3 / 2;
object-fit: cover;
}

.case_txt .date {
margin: 15px 0;
}

.case_txt h3 {
margin: 0;
font-size: 18px;
font-weight: 700;
line-height: 1.5;
}

ul.case_list li a.al_link {
position: absolute;
inset: 0;
margin: auto;
}

ul.case_list li .category a {
display: inline-flex;
margin-bottom: 5px;
padding: 5px 15px;
border-radius: 5px;
background: #aaa;
color: #fff;
font-size: 13px;
font-weight: 700;
}

ul.case_list li .txt,
ul.case_list li .txt .category {
position: relative;
}

ul.case_list li .txt .category {
z-index: 1;
}

ul.case_list li .category a.cat-panel-case { background: #f0f; }
ul.case_list li .category a.cat-magnetic-sheet { background: #75e02c; }
ul.case_list li .category a.cat-vinylsticker-case { background: #4cb994; }
ul.case_list li .category a.cat-leave-the-design { background: #90f; }
ul.case_list li .category a.cat-storefront-case { background: #468830; }
ul.case_list li .category a.cat-cheering-case { background: #c00; }
ul.case_list li .category a.cat-hanging-case { background: #f90; }
ul.case_list li .category a.cat-banner-case { background: #4285f4; }
ul.case_list li .category a.cat-bubble-case { background: #45818e; }
ul.case_list li .category a.cat-standee-case { background: #e2370f; }

/* 自由ページ03：入稿ガイド */
/* 元のLanding Page本文幅と、直接記載したブロックのレイアウトを再現 */
.page_template03 .post_content-type03 {
  max-width: 850px;
  margin: 50px auto 0;
  padding-bottom: 150px;
}
.page_template03 .post_content-type03 h3:not(.no_editor_style) {
  border-bottom: 2px solid #D81319;
  padding-bottom: 7px;
}
.page_template03 .post_content-type03 .point h4:not(.no_editor_style) {
  background: #FEEC61;
  padding: 5px 10px;
  border-radius: 3px;
  font-size: 18px;
}
.page_template03 .post_content-type03 ul:not(.no_editor_style) {
  list-style: none;
  margin-left: 0;
}
.page_template03 .post_content-type03 ul li:not(.no_editor_style) {
  padding-left: 1em;
  text-indent: -1em;
}
.page_template03 .post_content-type03 .border_box {
  display: inline-block;
  max-width: 100%;
  padding: 10px 15px;
  border: 2px solid #D81319;
  margin: 0 0 20px;
}
.page_template03 .post_content-type03 .border_box ul {
  margin-bottom: 0;
}
.page_template03 .post_content-type03 p.txt strong {
  font-weight: 600;
}
.page_template03 .post_content-type03 p.bg_gray {
  background: #F5F5F5;
  border-radius: 5px;
  padding: 25px 50px;
}
.page_template03 .post_content-type03 p.indent_txt {
  padding-left: 1em;
  text-indent: -1em;
}
.page_template03 .post_content-type03 p.r_txt {
  color: #D81319;
}
.page_template03 .post_content-type03 .point {
  margin-top: -40px;
  padding-top: 40px;
}
.page_template03 .post_content-type03 .wp-block-columns {
  display: flex;
  flex-wrap: nowrap;
  gap: 2em;
  margin-bottom: 1.75em;
}
.page_template03 .post_content-type03 .wp-block-column {
  flex: 1 1 0;
  min-width: 0;
  overflow-wrap: break-word;
}
.page_template03 .post_content-type03 .wp-block-column[style*="flex-basis"] {
  flex-grow: 0;
}
.page_template03 .post_content-type03 .are-vertically-aligned-center {
  align-items: center;
}
.page_template03 .post_content-type03 .is-vertically-aligned-center {
  align-self: center;
}
.page_template03 .post_content-type03 .wp-block-image {
  margin: 0 0 1em;
}
.page_template03 .post_content-type03 .wp-block-image img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
.page_template03 .post_content-type03 .wp-block-image.aligncenter {
  text-align: center;
}
.page_template03 .post_content-type03 .wp-block-image.alignleft {
  float: none;
}
.page_template03 .post_content-type03 .wp-block-image figcaption {
  margin-top: .5em;
  margin-bottom: 1em;
  text-align: center;
  color: #555;
  font-size: 13px;
}
/* 移設元の入稿ガイド専用スタイル */
.page_template03 .post_content-type03 .draft_index {
  border: 2px solid #D81319;
}
.page_template03 .post_content-type03 .draft_index_ttl {
  text-align: center;
  color: #fff;
  background: #D81319;
  padding: 10px;
}
.page_template03 .post_content-type03 .draft_index_box {
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 40px;
  padding: 0 20px 20px;
}
.page_template03 .post_content-type03 .draft_index_box02 {
  justify-content: flex-start;
  padding: 0;
}
.page_template03 .post_content-type03 .index_link_list {
  flex: 0 0 auto;
  max-width: 100%;
  margin: 0;
  padding: 0;
}
.page_template03 .post_content-type03 .index_link_list li:not(.no_editor_style) {
  padding-left: 0;
  text-indent: 0;
  font-size: 16px;
  font-weight: 500;
}
.page_template03 .post_content-type03 .index_link_list a,
.page_template03 .post_content-type03 .bottom_link a {
  color: #2D2D2D;
}
.page_template03 .post_content-type03 .bottom_link {
  margin-top: 20px;
  font-size: 16px;
  line-height: 2;
}
.page_template03 .post_content-type03 .blank a::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 5px;
  background: url("../../img/blank01.png") no-repeat center / contain;
}
.page_template03 .post_content-type03 .draft {
  margin-top: -50px;
  padding-top: 50px;
}
@media screen and (max-width: 781px) {
  .page_template03 .post_content-type03 .wp-block-columns {
    flex-wrap: wrap;
  }
  .page_template03 .post_content-type03 .wp-block-columns > .wp-block-column {
    flex-basis: 100% !important;
  }
}
@media screen and (max-width: 750px) {
  .page_template03 .post_content-type03 {
    padding-bottom: 60px;
  }
  .page_template03 .post_content-type03 .point h4:not(.no_editor_style) {
    font-size: 15px;
  }
  .page_template03 .post_content-type03 p.bg_gray {
    padding: 20px 15px;
  }
  .page_template03 .post_content-type03 .draft_index_box {
    display: block;
  }
}
.page_template03 .draft_index_box02 .index_link_list a.draft_point_link {
  position: relative;
  display: inline-block;
  padding-left: 26px;
}
.page_template03 .draft_index_box02 .index_link_list a.draft_point_link::before {
  content: "";
  position: absolute;
  top: calc((1lh - 18px) / 2);
  left: 0;
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cg fill='%2305f'%3E%3Cpath d='M6.08,16.07c-1.06,0-2.12-.4-2.93-1.21-.78-.78-1.21-1.82-1.21-2.93s.43-2.15,1.21-2.93l1.54-1.54c.29-.29.77-.29,1.06,0s.29.77,0,1.06l-1.54,1.54c-.5.5-.78,1.16-.78,1.87s.28,1.37.78,1.87c1.03,1.03,2.71,1.03,3.74,0l1.54-1.54c.29-.29.77-.29,1.06,0s.29.77,0,1.06l-1.54,1.54c-.81.81-1.87,1.21-2.93,1.21Z'/%3E%3Cpath d='M12.78,10.77c-.19,0-.38-.07-.53-.22-.29-.29-.29-.77,0-1.06l1.54-1.54c1.03-1.03,1.03-2.71,0-3.74-1-1-2.74-1-3.74,0l-1.54,1.54c-.29.29-.77.29-1.06,0s-.29-.77,0-1.06l1.54-1.54c.78-.78,1.82-1.21,2.93-1.21s2.15.43,2.93,1.21c1.62,1.62,1.62,4.25,0,5.86l-1.54,1.54c-.15.15-.34.22-.53.22Z'/%3E%3Cpath d='M6.97,11.79c-.19,0-.38-.07-.53-.22-.29-.29-.29-.77,0-1.06l4.07-4.07c.29-.29.77-.29,1.06,0s.29.77,0,1.06l-4.07,4.07c-.15.15-.34.22-.53.22Z'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
/* 列の幅を文字量に合わせ、収まらない場合は列ごと折り返す */
.page_template03 .post_content .draft_index_box.draft_index_box02 {
  display: flex;
  flex-wrap: wrap;
  gap: 0 40px;
}

/* 既存のリスト余白とFlexによる縮小を解除 */
.page_template03 .post_content .draft_index_box02 ul.index_link_list {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
  margin: 0 !important;
  padding: 0;
}

/* 既存の字下げを解除 */
.page_template03 .post_content .draft_index_box02 ul.index_link_list li:not(.no_editor_style) {
  padding-left: 0;
  text-indent: 0;
}

/* アイコンのスペースを確保 */
.page_template03 .post_content .draft_index_box02 .index_link_list a.draft_point_link {
  display: block;
  max-width: 100%;
  padding-left: 26px;
  text-indent: 0;
  white-space: normal;
}

@media screen and (max-width: 750px) {
  .page_template03 .post_content .draft_index_box02 ul.index_link_list {
    width: 100%;
  }
}

/* Dedicated page template titles: placed outside the constrained main content. */
.lowpra-page-title {
  width: 100%;
  margin: 20px 0;
  background: #fff9c1;
}
.lowpra-page-title__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1150px;
  min-height: 180px;
  margin: 0 auto;
  padding: 25px 20px;
}
.lowpra-page-title .lowpra-page-title__inner h1 {
  margin: 0;
  padding: 0;
  color: inherit;
  font-family: inherit;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 750px) {
  .lowpra-page-title .lowpra-page-title__inner h1 {
    font-size: 20px;
  }
}

/* Keep optional product archive subheadings within the shared title band. */
.lowpra-page-title__inner {
  flex-direction: column;
}
.lowpra-page-title__subtitle {
  margin: 10px 0 0;
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
  overflow-wrap: anywhere;
}

/* Match the case-detail breadcrumb geometry without its negative margins.
 * Band bottom -> list: 32px desktop, 40px mobile.
 * List bottom -> content: 12px desktop, 20px mobile.
 */
.lowpra-page-breadcrumb {
  max-width: 1150px;
  width: 96%;
  margin: 0 auto 12px;
  padding: 12px 0 0;
}
.lowpra-page-breadcrumb #bread_crumb {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
}
.lowpra-page-breadcrumb #bread_crumb ul {
  max-width: none;
  width: 100%;
  margin: 0;
  padding: 0;
}
.lowpra-breadcrumb-content {
  margin-top: 0;
  padding-top: 0;
}
#main_contents.lowpra-breadcrumb-content {
  margin-top: 0;
  padding-top: 0;
}
.lowpra-breadcrumb-content > :first-child,
.lowpra-breadcrumb-content .post_content > :first-child,
.page_template03.lowpra-breadcrumb-content .post_content-type03 {
  margin-top: 0;
}
#price_list.lowpra-breadcrumb-content .prcie_list_area {
  padding-top: 0;
}
@media screen and (max-width: 1024px) {
  .lowpra-page-breadcrumb {
    margin-bottom: 30px;
    padding-top: 30px;
  }
}
@media screen and (max-width: 750px) {
  .lowpra-page-breadcrumb {
    width: 100%;
    margin-bottom: 20px;
    padding-top: 20px;
    padding-right: 15px;
    padding-left: 15px;
  }
}

/* ご利用ガイド：はじめての方へ移設分 */
/* ご利用ガイド：はじめての方へから移設した内容の補正 */
#guide.page_template03 .post_content-type03 {
  max-width: 970px;
}
/* 元ページでは本文の外にあった紹介帯を全幅で表示 */
#guide.page_template03 .post_content-type03 > .beginners {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
#guide.page_template03 .beginners .cnt_box {
  width: calc(100% - 40px);
  margin-right: auto;
  margin-left: auto;
}
#guide.page_template03 .post_content-type03 .beginners h3 {
  border-bottom: 0;
  padding-bottom: 0;
  clear: none;
}
#guide.page_template03 .post_content-type03 .beginners p {
  margin-top: 0;
  margin-bottom: 0;
}
#guide.page_template03 .post_content-type03 .beginners .cnt_right h3,
#guide.page_template03 .post_content-type03 .beginners .cnt_up h3,
#guide.page_template03 .post_content-type03 .beginners .cnt_down h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 35px;
  margin-bottom: 25px;
}
#guide.page_template03 .post_content-type03 .guide_top ul li:not(.no_editor_style) {
  padding-left: 0;
  text-indent: 0;
}
@media screen and (max-width: 1024px) {
  #guide.page_template03 .post_content-type03 .beginners .cnt_right h3,
  #guide.page_template03 .post_content-type03 .beginners .cnt_up h3 {
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 781px) {
  #guide.page_template03 .post_content-type03 .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    max-width: 400px;
    margin-right: auto;
    margin-left: auto;
  }
}
#guide.page_template03 .cnt_area01.beginners.beginners-background {
    background: #fff;
}
#guide.page_template03 .cnt_area01.beginners .cnt_box.cnt_box-borderline {
  border:2px solid #D81319;
}
