@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
/*H2*/
.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)){
 color:#333;
 background-color:transparent;
}
.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before{
 display:none;
}
.l-header{
 border-top:none;
 box-shadow:none;
}
.l-header__inner{
 max-width:100%;
 height:110px;
}
.-series .l-header__logo{
 padding:10px 10px 10px 0;
}
.l-fixHeader__inner{
 max-width:100%;
}
.l-fixHeader__logo{
 padding:10px 10px 10px 0;
}
.-series .c-headLogo{
 height:60px;
}
.l-fixHeader__logo .c-headLogo{
 height:40px;
}
#header-document-button a, #header-contact-button a{
 color:#fff;
 background-color:#ff7800;
 border-radius:0;
}
/*ヘッダー上*/
.c-infoBar__text.-flow-off{
 justify-content:right;
}
/*パンくず*/
.-body-solid .p-breadcrumb.-bg-on{
 box-shadow:none!important;
}
/*FOOTER*/
#footer{
 color:#666666;
 background-color:#f8f8f8;
}
.l-footer__inner .w-footer__box:nth-child(1) {
 flex-basis: 20%; 
 flex-grow: 0;
 padding:0 1em;
 border-right:1px solid #4d4d4d;
}
#footer .w-footer{
  padding-top:3em;
  padding-bottom:3rem;
}
.w-footer__box{
 padding:0 1em;
}
#media_image-3, #text-4{
  margin-left:4em;
}
footer ul li a{
 padding:.75em 0!important;
 font-size:15px;
 border:none!important;
}
footer ul li a::before{
 display:none!important;
}
@media (min-width: 960px) {
  .w-footer__box:nth-child(3) {
    display: flex;
    justify-content: space-between;
    gap: 20px; /* 左右の間隔 */
  }
  .w-footer__box:nth-child(3) > * {
    flex: 1; /* 均等な幅にする */
    margin-top: 0 !important;
  }
}
@media (max-width: 960px) {
  .l-footer__inner .w-footer__box:nth-child(1) {
    flex-basis: 20%; 
    flex-grow: 0;
    padding:0 1em;
    border-right:none;
    border-bottom:1px solid #4d4d4d;
  }
  #media_image-3, #text-4{
    margin-left:0;
  }
  footer .c-widget{
    text-align:center;
  }
  #footer .w-footer{
    padding:0;
  }
  footer .w-footer__box{
    padding-top:2em!important;
    padding-bottom:2em!important; 
  }
}
/*SIDEBARサイドバー*/
.sidebar-button a{
 display:block;
 padding:20px;
 color:#fff;
 text-align:center;
 background-color:#2b2626;
 transition: background-color 0.5s ease;
}
.sidebar-button a:hover{
 background-color: #595448;
}
#custom_html-2, #custom_html-3{
 padding:14px;
 border:1px solid #2b2626;
}
.c-widget__title::before, .c-widget__title::after{
 display:none;
}
.c-widget__title.-side{
 margin-bottom:10px;
}
/*TOPPAGEスライダー*//* 記事スライダーを左右並びにするカスタマイズ *//* スライダーの各スライドを横並びに強制 */
#post_slider{
 padding:2rem 0 3rem;
 background-image:url(/wp-content/uploads/toppage-main-background.webp);
 background-size:cover;
}
.p-postSlider .p-postList__link {
 background: #fff; /* 背景を白にする場合 */
}
.swiper-slide h2{
 font-size:3rem;
}
.top-slider-text{
 font-size:1.13rem;
 font-weight:normal;
}
.swiper-button-next, .swiper-button-prev{
 background-color:#2563eb;
}
/*TOPPAGE*/
.home h2.wp-block-heading{
 display:block;
 position:relative;
 margin-top:8rem;
 margin-bottom:10px;
 padding:0 0 0 40px;
 font-size:1.25rem;
}
.home h2.wp-block-heading::before{
 display:block;
 position:absolute;
 content:"";
 top:0;
 left:0;
 width:30px;
 height:30px;
 background-image:url(/wp-content/uploads/h2-icon.svg);
 background-size:30px;
 border:none;
}
.home h2.new{
 width:fit-content;
}
.home h2.new::after{
 display:block;
 position:absolute;
 content:"";
 top:-40px;
 right:-80px;
 width:80px;
 height:60px;
 background-image:url(/wp-content/uploads/h2-new-icon.svg);
 background-size:80px;
 border:none;
 background-repeat:no-repeat;
}
.-type-card .p-postList__item{
 margin-bottom:2em;
 padding: 0 1em;
}
#toppage-category-list{
 padding-top:2rem!important;
 padding-bottom:2rem!important;
}
#toppage-category-list .swell-block-fullWide__inner{
 padding:0;
}
#toppage-category-list ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
}
#toppage-category-list li:first-child{
  border-left:1px solid #4d4d4d;
}
#toppage-category-list li{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 20%;
  min-width: 100px;
  box-sizing: border-box;
  padding: 10px;
  border-right:1px solid #4d4d4d;
}
#toppage-category-list ul li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: inherit;
  width: 100%;
}
#toppage-category-list .wp-block-column figure, #toppage-category-list li figure{
 margin:0 auto;
 max-width:60px;
 width:100%;
}
.p-postList .p-postList__item a{
 border-radius:5px;
 overflow:hidden;
 box-shadow:3px 3px 3px 0 rgb(0 0 0 / 0.2);
}
.p-postListWrap{
 margin-bottom:0;
}
.p-postList__cat{
  width:fit-content;
  display:block;
  margin-bottom:10px;
  padding:4px 10px;
  color:#2563eb;
  background-color:transparent;
  border: 1px solid #2563eb;
}
#toppage-middle-download-cta{
 position:relative;
 margin:10rem auto 5rem;
 padding:2rem;
 background-color:#fff;
 border-radius:8px;
 box-shadow:3px 3px 3px 0 rgb(0 0 0 / 0.2);
}
#toppage-middle-download-cta .illust-woman{
 position:absolute;
 top:-60px;
 left:-30px;
 width:120px;
 height:300px;
}
#toppage-middle-download-cta .left-box{
 padding-left:4rem;
 text-align:center;
}
#toppage-middle-download-cta .right-box{
 display:flex;
 align-items:center;
}
#toppage-middle-download-cta .micro-copy{
 position:relative;
 display:block;
 margin:0 auto 5px;
 padding:0 20px;
 width:fit-content;
 font-size:1.5rem;
 letter-spacing:6px;
}
#toppage-middle-download-cta .micro-copy::before{
 position:absolute;
 display:block;
 content:"";
 top:0;
 left:0;
 width:1px;
 height:38px;
 background-color:#111827;
 transform:rotate(-30deg);
}
#toppage-middle-download-cta .micro-copy::after{
 position:absolute;
 display:block;
 content:"";
 top:0;
 right:0;
 width:1px;
 height:38px;
 background-color:#111827;
 transform:rotate(30deg);
}
#toppage-middle-download-cta .text{
 font-size:1.8rem;
 font-weight:600;
}
#toppage-middle-download-cta .swell-block-button a{
 position:relative;
 padding:13px 60px 10px 30px;
 background: linear-gradient(90deg, #1e3a8a, #2563eb, #06b6d4, #10b981);
}
#toppage-middle-download-cta .swell-block-button a::before{
 position:absolute;
 content:"";
 top:calc(50% - 15px);
 right:10px;
 width:30px;
 height:30px;
 background-image: url(/wp-content/uploads/toppage-cta-middle-download-icon.svg);
}
.customize-support{
 background-color:#f8f8f8;
}
.top #content{
 padding-top:0;
}
.home {
  background-image: url("/wp-content/uploads/toppage-body-background01.svg"), url("/wp-content/uploads/toppage-body-background02.svg"), url("/wp-content/uploads/toppage-body-background03.svg");
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-position: top 30% center, top 60% center, top 80% center;
  background-size: 100%, 100%, 100%;
}
.-type-card .p-postList__item a{
 background-color:#fff;
}
.-type-card .p-postList__body{
 padding:20px;
}
.icon-folder:before, .icon-posted:before{
 display:none;
}
.c-postThumb__cat{
 background-color:#2563eb;
 background-image:none;
}
.p-postList__meta{
 color:#111827!important;
}
.tag-cloud-link{
 border: 1px solid #111827;
 background-color:#fff;
}
.link-view-list{
 display:block;
 position:relative;
 margin: 0 auto .75rem;
 padding:0 30px 0 0; 
 letter-spacing:1px;
}
.link-view-list::before{
 display:block;
 position:absolute;
 content:"";
 top:calc(50% - 10px);
 right:0;
 width:20px;
 height:20px;
 border:1px solid #2563eb;
 border-radius:50%;
}
.link-view-list::after{
 display:block;
 position:absolute;
 content:"";
 top:calc(50% - 3px);
 right:8px;
 width:6px;
 height:6px;
 border-top:1px solid #2563eb;
 border-right:1px solid #2563eb;
 transform:rotate(45deg);
}
@media (min-width: 960px) {
  .p-postSlider .p-postList__link {
     display: flex !important;
     flex-direction: row !important;
     align-items: center !important;
     background: #fff;
     text-decoration: none;
    min-height: 337.5px;
  }
  .p-postSlider .p-postList__thumb {
     width: 50% !important;
     margin: 0 !important;
     padding: 0 !important;
  }
   .p-postSlider .c-postThumb__figure {
      margin: 0 !important;
      height: 337.5px;
   }
   .p-postSlider .c-postThumb__img {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
   }
   .p-postSlider .p-postList__body {
      width: 50% !important;
      padding: 40px !important;
      text-align: left !important;
   }
   .p-postSlider .p-postList__title {
      font-size: 2rem !important;
      margin-bottom: 20px !important;
      color: #111827 !important;
   }
   .p-postSlider .p-postList__meta, .p-postList__meta{
      display: block!important;
      gap: 15px;
      color: #858585 !important;
   }
  #post_slider .p-postList__cat{
    width:fit-content;
    display:block;
    margin-bottom:10px;
    padding:4px 10px;
    color:#fff;
    background-color:#666;
    border:none;
  }
  .p-postList__cat::before{
    display:none;
  }
  .p-postSlider .c-postAuthor__figure {
     width: 30px !important;
     height: 30px !important;
     margin-right: 8px !important;
  }
}
@media (max-width: 959px) {
  #toppage-category-list li{
    display: flex;
    width: 33.3%;
  }
  #toppage-category-list li:nth-child(1), #toppage-category-list li:nth-child(4){
    border-left:1px solid #4d4d4d;
  }
  #toppage-middle-download-cta .illust-woman{
    left:0;
    top:20px;
    width:90px;
  }
  #toppage-middle-download-cta .left-box{
    padding-left:5rem;
  }
  #toppage-middle-download-cta .micro-copy{
    font-size:1.25rem;
  }
  #toppage-middle-download-cta .micro-copy::before, #toppage-middle-download-cta .micro-copy::after{
    height:70px;
  }
  #toppage-middle-download-cta .text{
    font-size:1.5rem;
  }
}
/*共通*/
.single-post h2.wp-block-heading{
 display:block;
 position:relative;
 margin-top:8rem;
 margin-bottom:10px;
 padding:0 0 20px 16px;
 color:#333;
 font-size:1.25rem;
}
.single-post h2.wp-block-heading::before{
 display:block;
 position:absolute;
 content:"";
 top:auto;
 bottom:0;
 left:0;
 width:100%;
 height:1px;
 border:none;
 background-color:#bbb;
}
.single-post h2.wp-block-heading::after{
 display:block;
 position:absolute;
 content:"";
 bottom:0;
 left:0;
 width:30%;
 height:1px;
 border:none;
 background-color:#2563eb;
}
.single-post h3{
 margin:3rem auto 0;
}
.single-post h3::before{
 display:none!important;
}
/*共通CTA*/
/*BEFORE-FOOTER*/
#before_footer_widget, .w-beforeFooter{
 position:relative;
 margin:0 auto;
 padding:3rem 0;
 text-align:center;
 background-color:#2563eb;
}
#before_footer_widget h2{
 padding:0;
 color:#fff;
}
#before_footer_widget h2::before{
 display:none;
}
#before_footer_widget .wp-block-columns{
 margin: 0 auto;
 max-width:880px;
 width:100%;
 --wp-column-gap:4rem;
 gap:4rem;
}
#before_footer_widget .wp-block-buttons a{
 position:relative;
 max-width:400px;
 width:100%;
 padding:30px 20px 30px 40px;
 color:#8a90a5;
 font-size:1.4rem;
 font-weight:600;
 transition: background-color 0.5s ease;
 background-color: #fff;
 box-shadow:0 0 10px 10px rgb(0 0 0 / 0.1);
 background-image:url(/wp-content/uploads/common-cta-mail-icon.svg);
 background-size:40px;
 background-position:left 30px center;
 background-repeat:no-repeat;
}
#before_footer_widget .right-box .wp-block-buttons a{
 background-image:url(/wp-content/uploads/common-cta-question-icon.svg);
 background-size:50px;
}
#before_footer_widget .wp-block-buttons a::before{
 position:absolute;
 content:"";
 right:30px;
 top: calc(50% - 8px);
 width:14px;
 height:14px;
 border-top:3px solid #8a90a5;
 border-right:3px solid #8a90a5;
 transform:rotate(45deg);
}
#before_footer_widget .wp-block-buttons a:hover{
 background-color: #eee;
}
#before_footer_widget .wp-block-button{
 max-width:400px;
 width:100%;
}
#before_footer_widget .microcopy{
 position:relative;
 margin: 0 auto 10px;
 padding:0 20px;
 width:fit-content;
 text-align:center;
 color:#fff;
 font-size:14px;
}
#before_footer_widget .microcopy::before{
 position:absolute;
 content:"";
 top:0;
 left:0;
 width:1px;
 height:22px;
 background-color:#fff;
 transform:rotate(-20deg);
}
#before_footer_widget .microcopy::after{
 position:absolute;
 content:"";
 top:0;
 right:0;
 width:1px;
 height:22px;
 background-color:#fff;
 transform:rotate(20deg);
}
#before_footer_widget .illust-man{
 position:absolute;
 bottom:-30px;
 right:0;
 width:150px;
 height:232px;
}
.wp-block-button__link{
 padding:calc(.667em + 2px) calc(1.333em + 10px);
}
.article-middle-cta-button a, .article-cta a{
 transition: background-color 0.5s ease;
}
.article-middle-cta-button a:hover, .article-cta a:hover{
 background-color: #595448;
}
#article-bottom-cta{
 padding:2rem;
 background-color:#f3f3f3;
}
#article-bottom-cta p{
 text-align:center;
}
#article-middle-cta{
 padding:2rem;
 background-color:#f3f3f3;
}
@media (max-width: 1199px) {
  #before_footer_widget .p-blogParts{
    padding-right:8em;
  }
  #before_footer_widget .wp-block-buttons a{
    font-size:1.2rem;
  }
}
@media (max-width: 960px) {
  #before_footer_widget .left-box .wp-block-buttons, #before_footer_widget .right-box .wp-block-buttons{
    justify-content:center;
  }
}
@media (max-width: 767px) {
  #before_footer_widget h2{
    margin-bottom:2rem;
    padding:0 6em 0 0;
  }
  #before_footer_widget .illust-man{
    bottom:auto;
    top:-50px;
    width:100px;
  }
  #before_footer_widget .p-blogParts{
    padding-right:0;
  }
  #before_footer_widget .wp-block-columns{
    --wp-column-gap:2rem;
    gap:2rem;
  }
}
/*投稿記事ページ*/
#main_content .p-toc{
 width:100%;
}
.article-blockquote h4{
 padding:0;
 border-left:none;
}
section.glossary{
 padding:1rem;
 background-image: linear-gradient(
  -45deg, 
  #f9f9f9 15%, 
  #f1f1f1 15%, 
  #f1f1f1 50%, 
  #f9f9f9 50%, 
  #f9f9f9 65%, 
  #f1f1f1 65%, 
  #f1f1f1 100%
  );
  background-size: 15px 15px;
}
section.glossary h5{
 display:block;
 position:relative;
 padding:0 0 0 40px;
}
section.glossary h5::before{
 display:block;
 position:absolute;
 content:"";
 top:0;
 left:0;
 width:30px;
 height:30px;
 background-image:url(/wp-content/uploads/h5-glossary-icon.svg);
 background-size:30px;
}
h2.l-articleBottom__title {
  border: none !important;
  border-bottom: 1px solid #b3b3b3 !important;
  background: linear-gradient(
    45deg, 
    #b3b3b3 0%, 
    #b3b3b3 180px, 
    transparent 180px, 
    transparent 100%
  ) !important;
    color: #fff !important;
    padding: 6px 0 6px 20px !important;
    display: block !important;
    width: 100% !important;
}

/*
.archive.category, .archive.author .l-mainContent__inner{
width: calc(100vw - var(--swl-scrollbar_width, 15px)) !important;
margin-left: calc((100vw - var(--swl-scrollbar_width, 15px) - var(--article_size)) / 2 * -1) !important; 
box-sizing: border-box !important;
}
 */

/* すみません！ちょっとテストさせていただきます */
/* h1とp-termHeadの間の余白をなくして連続して見せる */
.category .l-mainContent__inner {
    position: relative;
}

.category .c-pageTitle {
    background: linear-gradient(135deg, #dce8f5, #d5eef0);
    width: calc(100vw - var(--swl-scrollbar_width, 15px)) !important;
    margin-left: calc((100vw - var(--swl-scrollbar_width, 15px) - var(--article_size)) / 2 * -1) !important;
    margin-bottom: 0 !important;
    padding: 40px calc((100vw - var(--swl-scrollbar_width, 15px) - var(--article_size)) / 2);
    text-align: center;
}

.category .p-termHead {
    background: linear-gradient(135deg, #dce8f5, #d5eef0);
    width: calc(100vw - var(--swl-scrollbar_width, 15px)) !important;
    margin-left: calc((100vw - var(--swl-scrollbar_width, 15px) - var(--article_size)) / 2 * -1) !important;
    padding: 20px calc((100vw - var(--swl-scrollbar_width, 15px) - var(--article_size)) / 2) 40px;
    margin-top: 0 !important;
    text-align: center;
}
/* テスト終わり */