@charset "UTF-8";
.only-sp { display: none !important;}

/* ----------------------------------
 PanKuzu
---------------------------------- */
.breadcrumb { width: 1200px; padding: 15px 0; margin: 0 auto 20px; font-size: 12px; display: flex; align-items: center; flex-wrap: wrap; gap: 10px;}
.breadcrumb .breadcrumb-item,
.breadcrumb .breadcrumb-item a { font-size: 12px; color: #0047BA; word-break: keep-all; white-space: nowrap;}
.breadcrumb .arrow { font-size: 12px; color: #C4CBCF; word-break: keep-all; white-space: nowrap;}
.breadcrumb .current-label { font-size: 12px; color: #15181C; word-break: keep-all; white-space: nowrap;}

/* ----------------------------------
 Pager
---------------------------------- */
.navipage_.bottom_ { margin: 0; padding: 20px 0 50px; border: none; text-align: center;}
.navipage_.bottom_ center { display: flex; justify-content: center; flex-wrap: wrap;}
.navipage_.bottom_ center .navipage_reverse_ { display: flex; justify-content: center; flex-wrap: wrap;}
.navipage_.bottom_ center .navipage_forward_ { display: flex; justify-content: center; flex-wrap: wrap;}
.navipage_.bottom_ center a,
.navipage_.bottom_ center .navipage_now_ { width: 32px; height: 32px; padding: 2px 0 0 0; margin: 0; border: none; border-radius: 32px; font-size: 13px; text-decoration: none; color: #15181C; display: flex; justify-content: center; align-items: center; transition: 0.3s;}
.navipage_.bottom_ center > a,
.navipage_.bottom_ center .navipage_now_ { margin: 0 5px;}
.navipage_.bottom_ center .navipage_first_,
.navipage_.bottom_ center .navipage_prev_,
.navipage_.bottom_ center .navipage_next_,
.navipage_.bottom_ center .navipage_last_ { width: 32px; height: 32px; padding: 0; margin: 0 3px; border: none;}
.navipage_.bottom_ center > a       { border: #E9EEF0 2px solid; font-weight: 600; color: #15181C; background: #E9EEF0;}
.navipage_.bottom_ center > a:hover { border: #0047BA 2px solid; font-weight: 600; color: #0047BA; background: #ffffff;}
.navipage_.bottom_ center .navipage_now_ { border: #0047BA 2px solid; font-weight: 600; color: #ffffff; background: #0047BA;}
.navipage_.bottom_ center .navipage_first_ a,
.navipage_.bottom_ center .navipage_prev_ a,
.navipage_.bottom_ center .navipage_next_ a,
.navipage_.bottom_ center .navipage_last_ a { border: #ffffff 2px solid; display: block; font-size: 0; background: #fff; position: relative;}
.navipage_.bottom_ center .navipage_first_ a::before,
.navipage_.bottom_ center .navipage_first_ a::after,
.navipage_.bottom_ center .navipage_prev_ a::before,
.navipage_.bottom_ center .navipage_next_ a::before,
.navipage_.bottom_ center .navipage_last_ a::before,
.navipage_.bottom_ center .navipage_last_ a::after { content: ''; width: 8px; height: 8px; border-top: #9DA3A6 1px solid; border-left: #9DA3A6 1px solid; position: absolute; top: calc(50% - 4px); display: block;}
.navipage_.bottom_ center .navipage_first_ a::before { left:   8px; transform: rotate(-45deg);}
.navipage_.bottom_ center .navipage_first_ a::after  { left:  14px; transform: rotate(-45deg);}
.navipage_.bottom_ center .navipage_prev_ a::before  { left:  12px; transform: rotate(-45deg);}
.navipage_.bottom_ center .navipage_next_ a::before  { right: 12px; transform: rotate(135deg);}
.navipage_.bottom_ center .navipage_last_ a::before  { right:  8px; transform: rotate(135deg);}
.navipage_.bottom_ center .navipage_last_ a::after   { right: 14px; transform: rotate(135deg);}

/* ----------------------------------
 Contents Common
---------------------------------- */
h1.design-title { padding: 0 0 20px 0; margin: 0 0 40px 0; border-bottom: #DFE4E6 1px solid; font-family: "roc-grotesk", sans-serif; font-size: 34px; font-weight: 800; font-style: normal; text-align: center; line-height: 1.0; color: #0047BA;}
.no-data-message { margin: 60px 0; font-size: 16px; text-align: center;}

.side-navigation-frame { padding: 20px 10px 10px; margin: 0 0 30px; border-radius: 20px; background: #F0F5F7;}
.side-navigation-frame > h2 { padding: 10px 0; margin: 0 0 20px 0; border-bottom: #DFE4E6 1px solid; font-size: 14px; font-weight: 600; line-height: 1.0; color: #0047BA;}
.side-navigation-frame > h3 { padding: 10px 0; margin: 0 0 20px 0; border-bottom: #DFE4E6 1px solid; font-size: 14px; font-weight: 600; line-height: 1.0;}
.side-navigation-frame ul   { margin: 0 0 20px 0;}
.side-navigation-frame li a { padding: 12px 0; font-size: 12px; text-decoration: none; line-height: 1.2; display: block; position: relative;}
.side-navigation-frame li.link a::after { content: ""; width: 8px; height: 8px; margin: 0 0 0 5px; border-right: 1px solid #9DA3A6; border-top: 1px solid #9DA3A6; position: absolute; top: calc(50% - 4px); right: 5px; transform: rotate(45deg);}
.side-navigation-input-keyword { position: relative; top: -10px;}
.side-navigation-input-keyword form   { width: 100%; height: 30px; border-radius: 30px; background: #fff; display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: center; overflow: hidden;}
.side-navigation-input-keyword input  { width: calc(100% - 30px); height: 30px; min-height: 30px; border: none; padding: 0 10px; margin: 0;}
.side-navigation-input-keyword button { width: 30px; height: 30px; border: none; outline: none; border-radius: 30px; background: #fff url(../../img/usr/common/header/ico_search.png) right center no-repeat; -webkit-background-size: 18px 18px; background-size: 18px 18px;}
.side-navigation-frame + .Archive { margin-bottom: 0 !important; border-radius: 0 0 20px 20px !important; position: relative; top: -50px;}
.side-navigation-frame + .Archive + .forcms_block { margin-bottom: 0 !important; position: relative; top: -20px;}

.for-other-contents-button { margin: 0 0 30px 0;}
.for-other-contents-button a { width: 100%; height: 90px; padding: 2px 0 0 0; border-radius: 20px; font-family: "roc-grotesk", sans-serif; font-size: 34px; font-weight: 800; font-style: normal; text-decoration: none; color: #fff; background: #0047BA; display: flex; justify-content: center; align-items: center; position: relative; transition: 0.3s;}
.for-other-contents-button a::after { content: ""; width: 8px; height: 8px; margin: 0 0 0 5px; border-right: 1px solid #fff; border-top: 1px solid #fff; position: absolute; top: calc(50% - 4px); right: 15px; transform: rotate(45deg);}
.for-other-contents-button a:hover { opacity: 0.7;}
.for-other-contents-button a.for-storeblog { font-size: 22px;}
.for-other-contents-button a.for-onlinestore { font-size: 16px; text-align: center;}
.for-other-contents-button a.for-onlinestore::after { display: none;}

.share-button-box { margin: 0 0 30px 0; display: flex; justify-content: flex-end;}
.share-button-box ul { display: flex; justify-content: flex-end; align-items: center;}
.share-button-box ul li { margin: 0 0 0 20px;}
.share-button-box ul li.title { margin: 0; font-size: 15px; color: #0047BA;}
.share-button-box ul li img { width: 30px; vertical-align: top;}
.share-button-box ul li a { transition: 0.3s;}
.share-button-box ul li a:hover { opacity: 0.6;}

.contents-template-frame { margin: 0 0 40px 0; font-size: 16px; line-height: 2.0;}
.contents-template-frame strong { font-weight: bold;}
.contents-template-frame > .field-image { margin: 0 0 30px 0; text-align: center;}
.contents-template-frame > .field-image img { max-width: 100%; vertical-align: top;}
.contents-template-frame .field-text-box { margin: 0 0 50px 0;}

.field-tmplset img { max-width: 100%; max-height: 100%; height: auto; vertical-align: top;}
.field-tmplset .for-sp { display: none !important;}
.field-tmplset .blue-line { padding: 10px 20px; margin: 0 0 30px 0; border-radius: 10px; font-size: 18px; font-weight: 700; color: #fff; background: #0047BA; display: flex; align-items: center;}
.field-tmplset .blue { color: #0047BA;}
.field-tmplset .bold { font-weight: 700;}
.field-tmplset .field-title { padding: 0 0 10px 0; margin: 0 0 20px 0; border-bottom: #0047BA 2px solid; font-size: 18px; font-weight: 600;}
.field-tmplset .mark-list { margin: 20px 10px;}
.field-tmplset .mark-list li { padding: 0 0 0 1em; text-indent: -1em; list-style: disc inside;}
.field-tmplset .field-image { margin: 0 0 30px 0; text-align: center;}
.field-tmplset .field-image img { max-width: 100%; max-height: 100%; vertical-align: top;}
.field-tmplset .flex-frame { padding: 0 30px; display: flex; flex-wrap: wrap; justify-content: space-between;}
.field-tmplset .flex-frame.visual-right { flex-direction: row-reverse;}
.field-tmplset .flex-frame.gray-box { padding: 30px; border-radius: 15px; background: #F0F5F7;}
.field-tmplset .flex-frame + .flex-frame { margin-top: 40px;}
.field-tmplset .flex-frame .flex-image { width: 100%;}
.field-tmplset .flex-frame .flex-desc  { width: 100%;}
.field-tmplset .flex-frame.visual-left .flex-image,
.field-tmplset .flex-frame.visual-right .flex-image { width: 350px;}
.field-tmplset .flex-frame.visual-left .flex-desc,
.field-tmplset .flex-frame.visual-right .flex-desc  { width: calc(100% - 390px);}
.field-tmplset .flex-frame.visual-full .flex-desc  { margin-top: 30px;}
.field-tmplset .flex-frame.column2-box .column-box { width: 350px; margin-bottom: 40px;}
.field-tmplset .flex-frame.column2-box .column-box .flex-image { width: 100%; margin: 0 0 15px 0;}
.field-tmplset .flex-frame.column2-box .column-box .flex-desc  { width: 100%;}
.field-tmplset .flex-desc-message-pop { padding: 25px 30px; margin: 0 0 20px 0; border-radius: 15px; background: #F0F5F7; position: relative;}
.field-tmplset .flex-desc-message-pop::before { content: ''; border-top: 10px solid transparent; border-right: 20px solid #F0F5F7; border-bottom: 10px solid transparent; position: absolute; left: -20px; top: 25px;}
.field-tmplset .visual-right .flex-desc-message-pop::before { border-left: 20px solid #F0F5F7; border-right: none; left: auto; right: -20px;}
.field-tmplset .accordion-frame { padding: 5px; border-radius: 15px; background: #F0F5F7;}
.field-tmplset .accordion-frame + .accordion-frame { margin-top: 10px;}
.field-tmplset .accordion-title { padding: 10px 50px 10px 20px; margin: 0; border-radius: 10px; font-size: 18px; font-weight: 700; color: #fff; background: #0047BA; display: flex; align-items: center; position: relative;}
.field-tmplset .accordion-title::before,
.field-tmplset .accordion-title::after { content: ''; width: 13px; border-top: #fff 1px solid; display: contents; position: absolute; right: 20px; top: calc(50% - 1px); transition: 0.3s;}
.field-tmplset .accordion-title::after { transform: rotate(90deg);}
.field-tmplset .accordion-title.active::after { transform: rotate(0deg);}
.field-tmplset .accordion-contents { padding: 30px;}
.field-tmplset .swiper-frame { width: 100%; margin: 0 auto; position: relative;}
.field-tmplset .swiper-button-prev,
.field-tmplset .swiper-button-next { width: 50px; height: 50px; margin: 0; border-radius: 50px; font-size: 0; background: rgba(157,163,166,0.9); display: block; position: absolute; top: calc(50% - 25px);}
.field-tmplset .swiper-button-prev { left: -25px;}
.field-tmplset .swiper-button-next { right: -25px;}
.field-tmplset .swiper-button-prev::after,
.field-tmplset .swiper-button-next::after { display: none !important;}
.field-tmplset .swiper-button-prev::before,
.field-tmplset .swiper-button-next::before { content: ""; width: 10px; height: 10px; border-right: 1px solid #fff; border-top: 1px solid #fff; position: absolute; left: calc(50% - 3px); top: calc(50% - 5px); display: block; transform: rotate(-135deg);}
.field-tmplset .swiper-button-next::before { left: calc(50% - 7px); transform: rotate(45deg);}

.detail-page-navigation { width: 100%; padding: 0 60px; margin: 0 0 80px 0; display: flex; align-items: center;}
.detail-page-navigation .navi-next { margin: 0 0 0 auto;}
.detail-page-navigation .navi-prev a,
.detail-page-navigation .navi-next a { width: 200px; height: 45px; padding: 1px 0 0 0; border: #0047BA 2px solid; border-radius: 45px; font-size: 15px; text-decoration: none; color: #0047BA; background: #FFF; display: flex; justify-content: center; align-items: center; box-sizing: border-box; transition: 0.3s;}
.detail-page-navigation .navi-prev a:hover,
.detail-page-navigation .navi-next a:hover { color: #FFF; background: #0047BA;}

/* ----------------------------------
 Contact
---------------------------------- */
#page_contact_header { width: 1200px; margin: 0 auto 60px; text-align: center;}
#page_contact_header p { margin: 0 0 30px 0; font-size: 16px; text-align: center; line-height: 1.8;}
#page_contact_body { width: 1200px; margin: 0 auto 80px;}
#page_contact_body .static-catch .btn-style { margin-top: 25px;}
#page_contact_body .cmn-static-block { max-width: 980px; margin: 0 auto;}
#page_contact_body .cmn-static-block + .cmn-static-block { margin-top: 60px;}
#page_contact_body .cmn-static-block .block-title { padding: 0 0 6px 0; margin: 0 0 20px 0; border-bottom: 1px solid #e6e6e6; font-size: 24px; line-height: 1.2;}
#page_contact_body .cmn-static-block .box { padding: 0 20px 40px; border-bottom: 1px solid #e6e6e6; display: flex; justify-content: space-between;}
#page_contact_body .cmn-static-block .box + .box { margin-top: 30px;}
#page_contact_body .cmn-static-block .box .form-txt { width: 176px; font-size: 12px; font-weight: bold; position: absolute; right: 0; color: #666666; line-height: 1; padding-bottom: 12px; background: #fff url(../../img/usr/contact/bg_arrow.png) no-repeat left bottom;}
#page_contact_body .cmn-static-block .box-l { width: 550px;}
#page_contact_body .cmn-static-block .box-l .title { position: relative;}
#page_contact_body .cmn-static-block .box-l .title .ttl { width: 340px; margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid #cccccc; letter-spacing: 0; line-height: 1.2; font-size: 20px;}
#page_contact_body .cmn-static-block .box-l .title .ttl .num { padding-right: 10px; font-family: "Poppins", sans-serif; font-size: 32px; font-weight: 600; line-height: 1;}
#page_contact_body .cmn-static-block .box-l .title .ttl .ttl-s { padding-left: 34px; font-size: 14px;}
#page_contact_body .cmn-static-block .box-l .title .form-txt { bottom: 0;}
#page_contact_body .cmn-static-block .box-l .cont { font-size: 14px; position: relative;}
#page_contact_body .cmn-static-block .box-l .cont p { width: 340px; padding-bottom: 12px;}
#page_contact_body .cmn-static-block .box-l .cont p a { color: #0047BA;}
#page_contact_body .cmn-static-block .box-l .cont .circle { margin: 0 0.25em 0 0; color: #c2c2c2;}
#page_contact_body .cmn-static-block .box-l .cont .indent { padding-left: 1.25em;}
#page_contact_body .cmn-static-block .box-l .cont .ttl-s { font-size: 12px; letter-spacing: 0;}
#page_contact_body .cmn-static-block .box-l .cont .form-txt { top: 50%; margin-top: -12px;}
#page_contact_body .cmn-static-block .box-r { width: 370px;}
#page_contact_body .cmn-static-block .pt25 { padding-top: 25px;}
#page_contact_body .cmn-static-block .contact-btn01 { display: table; width: 100%; height: 60px; text-align: center; margin-bottom: 20px;}
#page_contact_body .cmn-static-block .contact-btn01 a { display: table-cell; vertical-align: middle; color: #fff; background: #0047BA; font-size: 16px;}
#page_contact_body .cmn-static-block .contact-btn01 a:hover { opacity: 0.7; text-decoration: none;}
#page_contact_body .cmn-static-block .contact-btn02 { padding: 20px; text-align: center; background: #f0f0f0;}
#page_contact_body .cmn-static-block .phone-txt { padding-bottom: 10px; font-size: 12px; font-weight: bold;}
#page_contact_body .cmn-static-block .phone-num { margin-bottom: 13px; font-size: 20px; font-weight: bold; display: inline-block;}
#page_contact_body .cmn-static-block .phone-num span { padding-right: 15px; font-size: 12px;}
#page_contact_body .cmn-static-block .free { padding-left: 40px; background: url(../../img/usr/contact/ico_freedial.png) no-repeat left top;}
#page_contact_body .cmn-static-block .address { padding-top: 13px; border-top: 1px solid #ccc; color: #666; font-size: 11px; letter-spacing: 0;}
#page_contact_body .cmn-static-block .memo { font-size: 11px; letter-spacing: 0;}

/* ----------------------------------
 FreePage
---------------------------------- */
.w1200 { width: 1200px;}
.w960  { width: 960px;}
.bold { font-weight: bold;}
.mb20 { margin-bottom: 20px;}
.company-color { color: #CD0000 !important;}
.indent05 { padding-left: 0.5em; text-indent: -0.5em;}
.indent01 { padding-left:   1em; text-indent:   -1em;}
.indent15 { padding-left: 1.5em; text-indent: -1.5em;}
.indent02 { padding-left:   2em; text-indent:   -2em;}
.indent25 { padding-left: 2.5em; text-indent: -2.5em;}
.indent03 { padding-left:   3em; text-indent:   -3em;}
.indent35 { padding-left: 3.5em; text-indent: -3.5em;}
.site-freepage { margin: 0 auto;}
.site-freepage .box { margin: 0 auto 80px;}
.site-freepage .box p { font-size: 14px; line-height: 1.8;}
.site-freepage .box p + p,
.site-freepage .box p + ul,
.site-freepage .box ul + p,
.site-freepage .box ul + ul { margin-top: 20px;}
.site-freepage .in-box { margin: 0 0 40px 0;}
.site-freepage .in-box li a,
.site-freepage .in-box p a { text-decoration: underline; color: #0047BA;}
ul.mark-list li { padding-left: 1em; text-indent: -1em; list-style: disc inside;}

h2.has-line-mark { padding-bottom: 16px; padding-left: 16px; margin-bottom: 20px; border-bottom: 1px solid #e6e6e6; font-size: 18px; line-height: 1.2; position: relative;}
h2.has-line-mark::before { content: ''; width: 6px; height: 20px; border-radius: 3px; position: absolute; top: 0; left: 0; background: #848484;}
h3.gray-box-title { padding: 15px 20px; margin: 0 0 30px 0; font-size: 14px; font-weight: bold; background: #f0f0f0;}

