@charset "utf-8";
/*
Theme Name:solaris_tcd088-child
Author:r Ku
Version:2.1.3
Text Domain:tcd-solaris
Template:solaris_tcd088
*/


/* =======================================================
* common
* ======================================================= */
/* design */
html.pc {
    scroll-behavior: smooth;
    scroll-padding-top: 80px;
}

body {
    box-sizing: border-box;
    letter-spacing: 0.1em;
    line-height: 1.6;
}

body, .rich_font, .p-vertical {
    font-family: "Arial", "メイリオ", "Meiryo", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif !important;
}

.flex-block {
    display: flex;
}

.flex-between {
    display: flex;
    justify-content: space-between;
}

.flex-evenly {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}

.sp-br { /* SP改行 */
    display: none;
}

.pc-br { /* PC改行 */
    display: block;
}

.cb_headline {
    text-align: left;
    padding-bottom: 80px;
}

.common_headline {
    line-height: 2;
}

.sub_headline {
    font-size: 18px;
    font-weight: bold !important;
}

.design_button {
    height: unset !important;
    padding: 0;
}

.design_button a {
    height: unset !important;
    line-height: unset !important;
    font-size: 14px;
    padding: 18px 0;
}

.design_button.type1 a,
.entry-more span {
    background: linear-gradient(to right, #63AFD9, #71B0B4) !important;
}

.design_button.type1 a:hover,
.entry-more span:hover {
    opacity: 0.7;
}

.design_button.shape_type1 a {
    font-weight: normal;
}

.design_button.type1.button-wht a {
    color: #3B4043 !important;
    background: #FFF !important;
}

.design_button.type1.button-wht a,
.design_button.type1.button-wht a:hover {
    color: #3B4043 !important;
}

.sp_design {
    display: none !important;
}

/* header */
#header {
    padding: 0 10px;
}

body.single #header.active:after {
    display: block !important;
}

body.single #global_menu > ul > li > a {
    color: #FFF;
}


#header .logo a {
    padding-left: 10px;
}

.logo img {
    width: 270px;
    height: 40px;
}

#global_menu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#global_menu > ul {
    display: flex;
    align-items: center;
}

#global_menu ul li.menu-item-73,
#mobile_menu li.menu-item-73,
#global_menu ul li.menu-item-1298,
#mobile_menu li.menu-item-1298,
#global_menu ul li.menu-item-1297,
#mobile_menu li.menu-item-1297,
#global_menu ul li.menu-item-1299,
#mobile_menu li.menu-item-1299 {
    background: url(/wp-content/uploads/2023/09/icon-youtube.svg) center no-repeat;
    background-size: 40px;
    padding: 0 15px;
}

#global_menu ul li.menu-item-73 a,
#global_menu ul li.menu-item-1298 a,
#global_menu ul li.menu-item-1297 a,
#global_menu ul li.menu-item-1299 a {
    padding: 20px;
}



#global_menu > ul > li > a {
    font-weight: normal;
    padding: 0 15px;
}

#global_menu ul ul a {
    background: #63AFD9 !important;
}

#global_menu ul ul a:hover {
    background: #73b7db !important;
}

#global_menu .design_button:firstof-type {
    padding-left: 20px;
}

#global_menu .design_button a {
    min-width: unset;
    font-size: 14px;
    padding: 15px 25px;
}

#global_menu .button_la,
#global_menu #menu-item-433,
#global_menu #menu-item-434,
#global_menu #menu-item-478,
#global_menu #menu-item-479 {
    margin-left: 60px;
}


#global_menu #menu-item-433 > a,
#global_menu #menu-item-433 > a:hover,
#global_menu #menu-item-433 ul li,
#global_menu #menu-item-433 ul li:hover,
#global_menu #menu-item-434 > a,
#global_menu #menu-item-434 > a:hover,
#global_menu #menu-item-434 ul li,
#global_menu #menu-item-434 ul li:hover,
#global_menu #menu-item-478 > a,
#global_menu #menu-item-478 > a:hover,
#global_menu #menu-item-478 ul li,
#global_menu #menu-item-478 ul li:hover,
#global_menu #menu-item-479 > a,
#global_menu #menu-item-479 > a:hover,
#global_menu #menu-item-479 ul li,
#global_menu #menu-item-479 ul li:hover {
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}

#global_menu #menu-item-433 > a:hover,
#global_menu #menu-item-434 > a:hover,
#global_menu #menu-item-478 > a:hover,
#global_menu #menu-item-479 > a:hover {
    opacity: 0.7;
}

#global_menu .button_dl {
    height: 53px !important;
    padding-left: 10px;
}

#global_menu .button_la a,
#global_menu #menu-item-433 a,
#global_menu #menu-item-434 a,
#global_menu #menu-item-478 a,
#global_menu #menu-item-479 a {
    background: linear-gradient(to right, #8356C7, #5FADD8) !important;
}

#global_menu #menu-item-433 a,
#global_menu #menu-item-434 a,
#global_menu #menu-item-478 a,
#global_menu #menu-item-479 a {
    min-width: unset;
    border-radius: 60px;
    height: 53px;
    padding: 0 25px;
}

#global_menu #menu-item-433 a span,
#global_menu #menu-item-434 a span,
#global_menu #menu-item-478 a span,
#global_menu #menu-item-479 a span {
    display: flex;
    height: 53px;
    color: #FFF;
    align-items: center;
    line-height: unset;
}

#global_menu .button_dl a {
    background: linear-gradient(to right, #5FADD8, #6EADB1) !important;
}

#global_menu .button_la a span::before,
#global_menu .button_dl a span::after,
#global_menu #menu-item-433 a span::before,
#global_menu #menu-item-434 a span::before,
#global_menu #menu-item-478 a span::before,
#global_menu #menu-item-479 a span::before {
    content: "";
    display: inline-block;
    width: 23px;
    height: 23px;
    background-size: contain;
    vertical-align: bottom;
}

#global_menu .button_la a span::before,
#global_menu #menu-item-433 a span::before,
#global_menu #menu-item-434 a span::before,
#global_menu #menu-item-478 a span::before,
#global_menu #menu-item-479 a span::before {
    background: url(/wp-content/themes/solaris_tcd088-child/img/icon-la.svg) no-repeat;
    margin-right: 6px;
}

#global_menu .button_dl a span::after {
    background: url(/wp-content/themes/solaris_tcd088-child/img/icon-dl.svg) no-repeat;
    margin-left: 6px;
}

#global_menu #menu-item-433 ul,
#global_menu #menu-item-434 ul,
#global_menu #menu-item-478 ul,
#global_menu #menu-item-479 ul {
    top: 66.5px;
}

#global_menu #menu-item-433 ul a,
#global_menu #menu-item-434 ul a,
#global_menu #menu-item-478 ul a,
#global_menu #menu-item-479 ul a {
    background: linear-gradient(to right, #8356C7, #5FADD8) !important;
    color: #FFF;
    border-radius: unset;
}

#global_menu #menu-item-433 ul li:first-of-type a,
#global_menu #menu-item-434 ul li:first-of-type a,
#global_menu #menu-item-478 ul li:first-of-type a,
#global_menu #menu-item-479 ul li:first-of-type a {
    border-radius: 20px 20px 0 0;
}

#global_menu #menu-item-433 ul li:last-of-type a,
#global_menu #menu-item-434 ul li:last-of-type a,
#global_menu #menu-item-478 ul li:last-of-type a,
#global_menu #menu-item-479 ul li:last-of-type a {
    border-radius: 0 0 20px 20px;
}

#global_menu #menu-item-433 ul li a,
#global_menu #menu-item-434 ul li a,
#global_menu #menu-item-478 ul li a,
#global_menu #menu-item-479 ul li a {
    line-height: 53px;
}

#global_menu #menu-item-433 ul li a:hover,
#global_menu #menu-item-434 ul li a:hover,
#global_menu #menu-item-478 ul li a:hover,
#global_menu #menu-item-479 ul li a:hover {
    background: linear-gradient(to right, #a88ad8, #8fc5e4) !important;
}


/* footer */
#footer {
    background: linear-gradient(to right, #63AFD9, #71B0B4);
    color: #FFF; 
}

#return_top2 {
    display: none;
}

#footer_top {
    max-width: 880px;
    border: none;
    padding: 0;
    margin: 0 auto;
}

.footer-contact {
    align-items: center;
    padding: 50px 0 40px;
}

.footer-contact h3 {
    font-size: 24px;
    font-weight: bold;
    padding-bottom: 10px;
}

#footer_logo {
    max-width: 1400px;
    border-top: 1px solid #FFF;
    padding: 40px 0;
    margin: 0 auto;
}

#footer_logo img {
    width: 100px;
}

#footer_menu_bottom {
    height: unset;
    line-height: unset;
    border: none;
}

#footer_menu_bottom a {
    border-radius: 50px;
    color: #FFF;
}

#copyright {
    border: none;
    font-size: 12px;
    height: unset;
    line-height: 1.6 !important;
    padding: 40px 0;
}

/* KV */
video {
    width: 100%;
}

/* 製品紹介 */
.tab_content_top {
    display: none;
}

.tab_content_bottom {
    width: 100%;
    max-width: 1400px;
    border: none;
    padding: 80px 0;
}

.tab_content_bottom .title {
    margin-bottom: 0;
}

.tab_content_bottom .catch {
    font-weight: normal;
    line-height: 1.6;
    margin-bottom: 80px;
}

.tab_content_bottom .desc {
    line-height: 2.0;
}

/* 自動納骨壇システム */
.cb_noukotsu_list {
    background: url(/wp-content/themes/solaris_tcd088-child/img/top-noukotsu.jpg) center no-repeat;
    background-size: cover;
}

.index_noukotsu_list_wrap {
    width: 100%;
    max-width: 1400px;
    box-sizing: border-box;
    color: #FFF;
    padding: 80px 0;
    margin: 0 auto;
}

.index_noukotsu_list_wrap .cb_headline .headline {
    color: #FFF;
}

.noukotsu-inner {
    padding-bottom: 80px;
}

/* カスタマーサービス */
.cb_service_list {
    background: #FBFBFB;
}

.cb_service_top {
    width: 100%;
    max-width: 1400px;
    border: none;
    box-sizing: border-box;
    text-align: left;
    padding: 80px 0 0 0;
    margin: 0 auto;
}

.cb_service_top .cb_headline {
    padding: 0;
}

.cb_service_top .cb_desc {
    margin: 0 0 80px 0;
}

.cb_service_middle:before {
    border: none !important;
}


.cb_service_item_list .item.active a:after {
    background: linear-gradient(to right, #63AFD9, #71B0B4) !important;
    opacity: 0.7 !important;
}
@media screen and (max-width: 1200px) {
    .cb_service_list.num3 .cb_service_item_list .item a:after {
        background: linear-gradient(to right, #63AFD9, #71B0B4);
         opacity: 0.7;
    }
}



.pc .cb_service_item_list .content {
    padding: 0 35px 35px;
}

.pc .cb_service_item_list .title {
    line-height: 1.6;
}

.cb_service_item_list .bottom_title {
    display: block  !important;
    max-width: 260px;
    background: #FFF;
    border-radius: 50px;
    font-weight: normal !important;
    text-align: center !important;
    padding: 20px 0 !important;
    margin: 45px auto 0 !important;
}

.cb_service_item_list .desc {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3 !important; /* 制限したい行数が3の場合 */
    overflow: hidden !important;
    margin: 25px 0 45px;
}

.cb_service_item_list .bottom_title span {
    color: #3B4043 !important;
}

.cb_service_item_list .bottom_title:after {
    display: none !important;
}

.cb_service_bottom {
    border: none;
    padding: 80px 0;
}

/* 社長あいさつ */
.cb_message_list {
    background: url(/wp-content/uploads/2023/09/message_01-scaled.jpg) center no-repeat;
    background-size: cover;
}

.index_message_list_wrap {
    width: 100%;
    max-width: 1400px;
    padding: 80px 0;
    margin: 0 auto;
}

.cb_message_list .flex-between {
    align-items: center;
}

.message-inner {
    max-width: 900px;
    background: #FFF;
    box-shadow: 0 10px 10px rgba(0, 0, 0, .16);
    box-sizing: border-box;
    line-height: 2.4;
    padding: 50px;
}

.sign {
    text-align: right;
    padding-top: 40px;
}

.sign.flex-block {
    justify-content: flex-end;
    align-items: baseline;
}

.sign span {
    padding-right: 20px;
}

.sign img {
    width: 180px;
}

.button-list .design_button {
    padding: 15px 0;
}

.button-list .design_button a {
    box-shadow: 0 10px 10px rgba(0, 0, 0, .16);
}

/* お知らせ */
.cb_news_list {
    width: 100%;
    max-width: 1400px;
    border: none;
    box-sizing: border-box;
    padding: 80px 0;
}

.index_news_list_wrap {
    background: #FBFBFB;
}

.news_category_list,
.news_category_sort_button {
    width: 100%;
    max-width: 880px;
    text-align: left;
    padding: 80px 0 40px;
    margin: 0 auto !important;
}

.news_category_list li.active a:before,
.news_category_sort_button li.active a:before {
    display: none;
}

.news_category_list li a,
.news_category_sort_button li a {
    padding: 0 !important;
}

.news_list {
    max-width: 880px;
    margin: 0 auto;
}

.news_list .item {
    display: block;
    border: none;
    border-top: 1px solid #DDD;
    padding: 25px 0;
}

.news_list .item:last-of-type {
    border-bottom: 1px solid #DDD;
}

.news_list .flex-block {
    align-items: center;
    padding-bottom: 10px;
}

.news_list .category {
    width: 165px;
    min-width: auto;
    height: 35px;
    line-height: 35px;
    padding: 0;
}

.cb_news_list .design_button {
    margin: 0;
    padding: 80px 0;
}

.news_list a.category,
#single_news_container a.category {
    pointer-events: none;
}

.cb_content:last-of-type {
    padding-bottom: 80px;
}

/* =======================================================
* archive
* ======================================================= */
/* common */
#page_header {
    height: 380px;
}

#page_header .bg_image {
    background-size: cover;
}

#page_header .catch {
    text-align: left;
}

#page_header_inner {
    width: 100%s;
    max-width: 1400px;
    left: 20%;
    -ms-transform: translate(-20%, -50%);
    -webkit-transform: translate(-20%, -50%);
    transform: translate(-20%, -50%);
}



#archive_square_headline {
    display: none;
}

/* 製品一覧 */
.container_bg {
    background: #FBFBFB;
}


#project_archive {
    width: 100%;
    max-width: 1400px;
    border: none;
    padding-bottom: 80px;
}


#project_archive .products_conteiner {
    display: none;
}


.page_desc .title {
    font-size: 28px;
    font-weight: bold;
    text-align: left;
    position: relative;
    padding-bottom: 80px;
}

.page_desc .title::after {
    display: block;
    width: 1px;
    height: 40px;
    background: #63AFD9;
    content: "";
    position: absolute;
    top: 65px;
    left: 0;
    right: 0;
    margin: auto;
}

.project_list .item {
    width: calc(25% - -50px);
    margin: 0 100px 60px 0;
}

.project_list .item:nth-child(2n) {
    margin-right: 100px;
}

.project_list .item:nth-of-type(7),
.project_list .item:nth-of-type(8) {
    margin-bottom: 0;
}

@media screen and (max-width: 1500px) {
    .project_list {
        justify-content: center !important;
    }

    .project_list .item {
        width: calc(25% - -25px);
        margin: 0 50px 60px 0;
    }
    
    .project_list .item:nth-child(2n) {
        margin-right: 50px;
    }
}


.project_list .item:nth-child(3n) {
    margin-right: 0;
}

.project_list .image_wrap {
    height: 400px;
}

.project_inner {
    background: #FFF;
    padding: 25px 30px;
}


.project_list .title {
    max-height: unset;
    color: #3B4043;
    font-size: 16px;
    font-weight: normal;
    position: unset;
    padding: 0;
}


.project_list .desc {
    max-height: unset;
    /*height: 230px;
    overflow: unset;*/
    height: unset;
    box-sizing: content-box;
    text-align: left;
    padding: 0;
    margin: 30px 0;
}

.project_list .desc span {
    /*-webkit-line-clamp: unset;*/
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.project_inner .design_button {
    max-width: 260px;
    background: linear-gradient(to right, #63AFD9, #71B0B4) !important;
    border-radius: 60px;
    color: #FFF;
    padding: 18px 0;
    margin: 0 auto;
}

.project_inner .design_button:hover {
    opacity: 0.7;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}


@keyframes infinity-scroll-left {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-100%);
    }
  }
  
/* IE11対策 */
  _:-ms-lang(x)::-ms-backdrop,
  .custom_slide {
    display: -ms-grid;
    overflow: hidden;
  }
/* ---------------------------- */
.custom_slide__wrap {
    display: flex;
    overflow: hidden;
}
  
.custom_slide__list {
    display: flex;
    list-style: none;
}
  
.custom_slide__list--left {
    animation :infinity-scroll-left 95s infinite linear 0.5s both;
}
  
.custom_slide__item {
    width: calc(100vw / 4);
}

.custom_slide__item > img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    vertical-align: bottom;
}

/* カスタマーサービス一覧 */
#service_archive {
    width: 100%;
    max-width: 1400px;
    border: none;
    padding-bottom: 80px;
}

.page_desc {
    padding: 80px 0;
}

.page_desc .contact_area {
    font-size: 18px;
    text-align: center;
    padding-top: 45px;
}

.page_desc .contact_area span {
    font-size: 24px;
    font-weight: bold;
}

.page_desc .contact_area span::before {
    padding-right: 10px;
}

.page_desc .contact_area .tel::before {
    content: "TEL";
    font-size: 18px;
}

.kome {
    color: #E11C1C;
    text-align: center;
}

#service_archive #service_list {
    margin: 0;
}

#service_archive #service_list .item {
    height: 650px;
}

#service_archive #service_list .content_inner {
    width: 100%;
    padding: 75px 70px 45px;
}

#service_archive #service_list .content {
    background: linear-gradient(to right, rgba(99,175,217,0.7), rgba(113,176,180,0.7)) !important;
}

#service_archive #service_list .title {
    margin: 0;
}

#service_archive #service_list .desc {
    max-height: unset;
    overflow: unset;
}

#service_archive #service_list .desc span {
    -webkit-line-clamp: unset;
}

#service_archive #service_list .design_button {
    text-align: center;
    margin-top: 45px;
}

#service_archive #service_list .design_button.type1 a {
    background: #FFF !important;
    color: #3B4043 !important;
}

/* お知らせ一覧 */
#news_archive {
    width: 880px;
    padding: 0 0 80px;
}

.news_category_sort_button {
    box-sizing: border-box;
    text-align: left;
}

#news_archive .entry-more {
    min-width: 260px;
    max-width: 100%;
    height: unset;
    border: none;
    border-radius: 50px;
    color: #FFF;
}

#news_archive .entry-more span {
    border-radius: 60px;
    line-height: 1.6;
    padding: 18px 0;
}

/* あゆみ一覧 */
#blog_archive {
    width: 100%;
    /*padding-bottom: 220px;*/
    padding-bottom: 0;
}

#blog_archive .page_desc {
    width: 100%;
    max-width: 1400px;
    box-sizing: border-box;
    margin: 0 auto;
}

.chairman {
    font-family: ab-shinyubipenjigyosyotai, sans-serif;
    font-size: 30px;
    font-style: normal;
    font-weight: 400;
    padding: 0;
}


#blog_list article:last-of-type {
    margin: 0 auto;
}

.history_container {
    width: 100%;
    background: #63AFD9;
    position: absolute;
}

.history_container h3 {
    width: 100%;
    max-width: 1400px;
    max-height: unset !important;
    box-sizing: border-box;
    font-size: 28px;
    padding: 50px 0 80px;
    margin: 0 auto;
}

.history_container h3 a {
    color: #FFF;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}

.history_container h3 a:hover {
    opacity: 0.7;
    
}




#blog_list .item {
    width: 100%;
    max-width: 1400px;
    height: unset !important;
    border: none;
    position: relative;
    top: 120px;
    padding: 0;
    margin: 0 auto;
    margin-bottom: 220px;
}

#blog_list .content {
    width: 50%;
    height: unset !important;
    background: #FFF;
    border: 1px solid #DDD;
    position: relative;
    padding: 80px;
}

#blog_list .content_inner {
    position: unset;
    top: unset;
    transform: none;
}

#blog_list .meta {
    margin: 0 !important;
}

#blog_list .desc {
    max-height: unset;
    margin: 0 !important;
}

#blog_list .desc span {
    -webkit-line-clamp: 4;
    overflow: hidden;
}


#blog_list .content_inner .design_button {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 50px 80px;
}




#blog_list .image_link {
    width: 50%;
    height: 350px;
    object-fit: cover;
}



/* =======================================================
* single
* ======================================================= */
/* common */
body.single #header {
    position: absolute;
}

body.single #header::before {
    content: none;
}

#page_header .bg_image {
    background: url(/wp-content/uploads/2023/10/header_all.jpg) no-repeat center top; background-size: cover;
}

#page_header .overlay {
    background-color: rgba(0,127,197,0.3) !important;
}



/* 製品詳細 */
#bread_crumb,
#side_col,
.products_single article {
    display: none;
}

#main_contents {
    width: 100%;
    box-sizing: border-box;
    padding: 0;
}

#main_contents:after {
    content: none;
}

#main_col {
    width: 100%;
    margin: 0;
    
}

.products_single .page_desc {
    padding-top: 40px;
}

.products_single .page_desc > p {
    max-width: 1400px;
    text-align: left;
    margin: 0 auto;
}

.page_desc_derail {
    padding-bottom: 80px;
}



.products_point {
    width: 100%;
    max-width: 1400px;
    padding-bottom: 80px;
    margin: 0 auto;
}

.products_point .flex-between {
    align-items: center;
    padding-bottom: 50px;
}

.products_point .flex-between:last-of-type {
    padding-bottom: 0;
}


.products_point .flex-between img {
    width: 100%;
    max-width: 500px;
    height: 335px;
    object-fit: cover;
    vertical-align: bottom;
}

.products_point .products_points_inner {
    width: 100%;
    max-width: 900px;
    box-sizing: border-box;
    padding: 75px 100px;
}

.products_point .points_title {
    font-size: 24px;
    font-weight: bold;
    padding-bottom: 10px;
}

.products_lineup {
    background: #FBFBFB;
    padding-bottom: 80px;
    margin-bottom: 80px;
}

.products_lineup .page_desc {
    padding-top: 80px;
}


.products_lineup_list {
    width: 100%;
    max-width: 880px;
    background: #FFF;
    box-sizing: border-box;
    padding: 75px 150px 0;
    margin: 0 auto;
}

.products_lineup_list h3 {
    font-size: 16px;
    position: relative;
    padding-bottom: 60px;
}


.products_lineup_list h3::after {
    display: block;
    width: 1px;
    height: 20px;
    background: #63AFD9;
    content: "";
    position: absolute;
    top: 30px;
    left: 0;
    right: 0;
    margin: auto;
}

.products_lineup_list h4 {
    color: #63AFD9;
    font-size: 16px;
    padding-bottom: 15px;
}

.products_lineup_list h4 + p {
    padding-bottom: 60px;
}

.products_lineup_type_list {
    padding-bottom: 80px;
}

.products_lineup_type_list li {
    display: flex;
    border-bottom: 1px solid #DDD;
    padding: 25px;
}

.products_lineup_type_list li:first-of-type {
    text-align: center;
    padding-right: 0;
}

.products_lineup_type_list li:first-of-type .type_content {
    width: 70%;
}



.products_lineup_type_list li .type {
    width: 40%;
    margin: 0;
}

.products_lineup_type_list li .type_content {
    width: 60%;
    margin: 0;
}







.accordion_area {
    padding: 80px 0;
}








.accordion_content:not([open]) {
    margin-bottom: 7px;
}

.accordion_content:first-of-type summary {
    border-top: 1px solid #DDD;
}


.accordion_content summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #DDD;
    cursor: pointer;
    position: relative;
    padding: 25px;
}

.accordion_content[open] summary {
    border-bottom: none;
}

.accordion_content summary::-webkit-details-marker {
    display: none;
}

.accordion_content summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 2px solid #3B4043;
    border-right: 2px solid #3B4043;
    content: '';
    transition: transform .3s;
}

.accordion_content[open] summary::after {
    transform: rotate(225deg);
}

.accordion_content p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 0 60px 25px 25px;
    transition: transform .5s, opacity .5s;
}

.accordion_content[open] p {
    border-bottom: 1px solid #DDD;
    transform: none;
    opacity: 1;
}



/* お知らせ詳細 */
#single_news {
    background: #FBFBFB !important;
}

#single_news_container {
    width: 100%;
    border: none;
    padding: 80px 0 0;
}

#single_news_inner {
    width: 100%;
    border: none;
    padding: 0;
}

#single_news #article {
    width: 100%;
    max-width: 880px;
    margin: 0 auto;
}

#single_news_container .flex-block {
    align-items: center;
    padding-bottom: 10px;
}

#post_title .category,
#post_title .meta_top {
    margin: 0 !important;
}

#post_title .category {
    margin-right: 20px !important;
}

#single_news .post_content img.aligncenter {
    padding: 40px 0 0 !important;
    margin: 0 auto;
}

#news_next_prev_post {
    display: none;
}

#single_news_container .design_button {
    padding: 80px 0;
}

#recent_news {
    width: 100% !important;
    background: #FFF;
    padding-bottom: 80px;
    margin: 0 !important;
}

#recent_news .headline,
#recent_news .news_list {
    width: 100%;
    max-width: 880px;
    box-sizing: border-box;
    text-align: left;
    margin: 0 auto !important;
}

#recent_news .headline {
    padding: 80px 0;
}


#recent_news .headline span {
    color: #007FC5;
}


/* あゆみ詳細 */
#main_contents.history_detail {
    display: block;
    background: #FBFBFB;
    padding: 80px 0;
}

.history_detail #main_col {
    width: 100%;
    max-width: 880px;
    background: #FFF;
    padding: 40px 40px 0;
    margin: 0 auto;
}

.history_detail #post_title .title {
    color: #63AFD9;
}

.history_detail #post_title .category {
    display: none;
}

.post_table_contents {
    width: 100%;
    max-width: 550px;
    background: #FBFBFB;
    box-sizing: border-box;
    padding: 30px;
    margin: 0 auto;
}

.post_table_contents ul {
    list-style: none;
    margin: 0;
}

.post_table_contents ul li {
    border-bottom: 1px solid #DDD;
    padding: 15px 0;
}

.post_table_contents .main_post_table_contents .post_table_area {
    font-size: 16px;
    font-weight: bold;
    padding: 0 0 20px;
}

.post_table_contents .sub_post_table_contents li {
    border: none;
    text-indent: 1em;
    padding: 0;
}




.history_detail .post_content h2 {
    color: #63AFD9;
    font-size: 18px;
    padding: 40px 0 20px;
    margin: 0 !important;
}

.history_detail .post_content h3 {
    font-size: 15px;
    margin: 0 0 10px 0 !important;
}

/* 区切りラインなし */
.history_detail .post_content p {
    padding-bottom: 40px;
    margin-bottom: 0;
}

/* 区切りラインあり */
.history_detail .post_content .contents_line {
    position: relative;
    padding-bottom: 80px;
    margin: 0;
}

.contents_line::after {
    display: block;
    width: 1px;
    height: 40px;
    background: #63AFD9;
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    margin: 0 auto;
}

.history_detail .wp-block-image img {
    height: 290px;
    object-fit: contain;
}



/* 1カラム画像 */
.history_detail .post_content .aligncenter {
    text-align: center;
    padding-bottom: 40px;
    margin: 0 !important;
}

/* 2カラム画像 */
.wp-block-columns-is-layout-flex {
    padding-bottom: 40px;
}

/* ページナビ */
#next_prev_post {
    display: block;
    height: unset;
    border: none;
    position: unset;
    padding: 0;
    margin: 0 auto !important;
}

#next_prev_post .item {
    width: 100%;
    height: unset !important;
}

#next_prev_post .item:last-of-type {
    padding: 80px 0 0;
}

#next_prev_post a {
    width: 100% !important;
    max-width: 620px !important;
    height: unset !important;
    line-height: unset !important;
    background: #63AFD9 !important;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
    position: unset !important;
    padding: 35px 0;
    margin: 0 auto;
}

#next_prev_post a:hover {
    opacity: 0.7;
}

#next_prev_post .prev_post {
    display: none !important;
}

#next_prev_post .title_area {
    position: unset;
    transform: unset;
}

#next_prev_post .title {
    max-height: unset;
    color: #FFF;
    font-size: 18px;
    text-align: center;
    padding: 0 !important;
}

#next_prev_post .title span {
    padding: 0 2em;
}

#next_prev_post .next_post .title:after {
    display: none;
}

#main_contents.history_detail .design_button {
    padding-top: 80px;
}



/* =======================================================
* original-layout
* ======================================================= */
/* 特設2カラム */
.special_inner {
    position: relative;
}

.special_inner .inversion img {
    order: 1;
}

.special_contents {
    width: 100%;
    max-width: 900px;
    background: #FFF;
    box-sizing: border-box;
    box-shadow: 0 10px 10px rgba(0, 0, 0, .16);
    box-sizing: border-box;
    padding: 80px 100px;
    margin-bottom: 80px;
    z-index: 1;
}

.special_contents h2 {
    font-size: 28px;
    padding-bottom: 45px;
}

.special_inner img {
    width: 100%;
    max-width: 600px;
    box-shadow: 0 10px 10px rgba(0, 0, 0, .16);
    box-sizing: border-box;
    position: absolute;
    right: 0;
    margin-top: 90px;
}

.special_gallery {
    justify-content: center;
    padding: 160px 0;
}

.special_gallery img {
    width: 100%;
    max-width: 500px;
    box-shadow: 0 10px 10px rgba(0, 0, 0, .16);
    box-sizing: border-box;
    margin: 0 40px;
}

.special_inner.inversion .special_contents {
    position: absolute;
    right: 0;
}

.special_inner.inversion img {
    position: unset;
}

/* tel fax */
.contact_area {
    font-weight: bold;
}

.contact_area span {
    font-size: 24px;
}

.contact_area .tel::before {
    content: "TEL";
    font-size: 18px;
}

.contact_area .fax::before {
    content: "FAX";
    font-size: 18px;
}

/* アニメーション */
.inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
    transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}

.inview.animate {
    opacity: 1;
    top: 0;
}