@charset "UTF-8";
/* CSS Document */
@font-face {
    font-family: "m-plus-1p", sans-serif;
font-weight: 400;
font-style: normal;
}

@font-face {
    font-family: 'footer_bar';

    font-weight: 400;
    font-style:normal
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align:baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display:block
}

html {
    overflow-y: scroll;
    -webkit-text-size-adjust:100%
}

ul, ol {
    list-style:none
}

blockquote, q {
    quotes:none
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content:none
}

a:focus {
    outline:none
}

ins {
    text-decoration:none
}

mark {
    font-style: italic;
    font-weight:700
}

del {
    text-decoration:line-through
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor:help
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width:100%
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding:0
}

button, input, select, textarea {
    outline: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size:100%
}

input, textarea {
    background-image: -webkit-linear-gradient(hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0));
    -webkit-appearance: none;
    border-radius:0
}

input[type=checkbox] {
    -webkit-appearance:checkbox
}

input[type=radio] {
    -webkit-appearance:radio
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding:0
}

iframe {
    max-width:100%
}

.clearfix:after {
    display: block;
    clear: both;
    content: ""
}

sup {
    vertical-align: super;
    font-size:smaller
}

sub {
    vertical-align: sub;
    font-size:smaller
}

body {
   font-family: "m-plus-1p", sans-serif;
font-weight: 400;
font-style: normal;
    font-size: 14px;
    line-height: 1;
    width: 100%;
    position: relative;
    -webkit-font-smoothing:antialiased
}

.pc body.admin-bar {
    padding-top:32px
}

a {
    text-decoration:none
}

a, a:before, a:after, input {
    -webkit-transition-property: background-color, color;
    -webkit-transition-duration: .2s;
    -webkit-transition-timing-function: ease;
    transition-property: background-color, color;
    transition-duration: .2s;
    transition-timing-function:ease
}

.clear {
    clear:both
}

.hide {
    display:none
}

.post_content {
    word-wrap:break-word
}

#container {
    position: relative;
    height:100%
}

#main_contents {
    width: 1250px;
    margin: 0 auto;
    padding: 0 0 150px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#main_contents:after {
    position: absolute;
    left: 810px;
    content: '';
    width: 1px;
    height: 100%;
    background:#ddd
}

#main_col {
    width: 770px;
    padding: 40px 0 0;
    margin: 0 40px 0 0;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

body.page #main_col {
    padding-top:50px
}

body.hide_sidebar #main_col {
    width: 850px;
    padding-top: 90px;
    margin:0 auto
}

body.hide_sidebar #main_contents:after {
    display:none
}

#side_col {
    width:340px;
}

.design_button {
    text-align: center;
    z-index: 10;
    position: relative;
    height:70px
}

.design_button a {
    display: inline-block;
    min-width: 260px;
    max-width: 100%;
    height: 70px;
    line-height: 70px;
    font-size: 16px;
    padding: 0 20px;
    position: relative;
    overflow: hidden;
    z-index: 3;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .35s ease;
    transition:all .35s ease
}

.design_button.shape_type1 a {
    border-radius: 60px;
    font-weight:600
}

.design_button.type2 a, .design_button.type3 a {
    border:1px solid #fff
}

.design_button.type2 a:before, .design_button.type3 a:before {
    content: '';
    display: block;
    width: 100%;
    height: calc(100% + 2px);
    position: absolute;
    top: -1px;
    left: -100%;
    z-index: -1;
    -webkit-transition: all .5s cubic-bezier(.22, 1, .36, 1) 0s;
    transition:all .5s cubic-bezier(.22, 1, .36, 1) 0s
}

.design_button.type3 a:before {
    transform: skewX(45deg);
    width: calc(100% + 70px);
    left: calc(-100% - 70px);
    transform-origin:bottom left
}

.design_button.type2 a:hover:before, .design_button.type3 a:hover:before {
    left:0
}

.design_button.quick_tag_ver {
    margin:0 0 40px
}

.design_headline1 {
    font-size: 28px !important;
    text-align: center;
    line-height: 1.5 !important;
    margin: 0 0 50px !important;
    padding:0 !important
}

.design_headline2 {
    font-size: 22px !important;
    font-weight: 600;
    margin: 100px -40px 63px 0 !important;
    padding: 0 40px 0 0 !important;
    border-top: 1px solid #ddd;
    text-align:center
}

.design_headline2 span.title {
    display: inline-block;
    border-top: 3px solid #0070a4;
    padding-top: 20px;
    margin-top:-1px
}

body.hide_sidebar .design_headline2 {
    margin-right: 0 !important;
    padding-right:0 !important
}

.design_line {
    margin: 50px -40px 53px 0;
    border-color:#ddd
}

body.hide_sidebar .design_line {
    margin-right:0
}

.two_column_image {
    margin: 60px 0 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content:space-between
}

.two_column_image .item {
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex:1 1 0%
}

.two_column_image .item:first-of-type {
    margin-right:10px
}

.two_column_image img {
    display: block;
    margin:0 auto
}

#site_loader_overlay {
    opacity:1
}

body.end_loading #site_loader_overlay {
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity .9s ease 0s;
    transition:opacity .9s ease 0s
}

body.use_loading_screen.load_screen_animation_type2 #container {
    transform:translate3d(0px, 60px, 0px)
}

body.use_loading_screen.load_screen_animation_type3 #container {
    transform:translate3d(0px, -60px, 0px)
}

body.use_loading_screen #container.no_loading_screen {
    opacity:0
}

body.use_loading_screen.load_screen_animation_type2.end_loading #container, body.use_loading_screen.load_screen_animation_type3.end_loading #container {
    transform: translate3d(0px, 0px, 0px);
    -webkit-transition: transform .9s cubic-bezier(.165, .84, .44, 1) 0s;
    transition:transform .9s cubic-bezier(.165, .84, .44, 1) 0s
}

body.use_loading_screen.end_loading #container.no_loading_screen {
    opacity: 1;
    -webkit-transition: transform .9s cubic-bezier(.165, .84, .44, 1) 0s, opacity 1.5s ease 0s;
    transition:transform .9s cubic-bezier(.165, .84, .44, 1) 0s, opacity 1.5s ease 0s
}

#header_slider_wrap {
    width: 100%;
    height: 900px;
    position: relative;
    overflow:hidden
}

#header_slider {
    width: 100%;
    height: 900px;
    overflow: hidden;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#header_slider .item {
    width: 100%;
    height: 900px;
    position:relative
}

#header_slider .caption {
    width: 1150px;
    z-index: 100;
    text-align: center;
    color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#header_slider .catch {
    font-weight: 600;
    line-height: 1.4;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
    position:relative
}

#header_slider .catch.animate_item:nth-child(2) {
    margin-top:25px
}

#header_slider .desc {
    margin: 15px 0 0;
    position:relative
}

#header_slider .desc p {
    line-height:2.0
}

#header_slider .desc p.mobile {
    display:none
}

#header_slider .design_button {
    margin-top:30px
}

#header_slider .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index:2
}

#header_slider .bg_image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index:1
}

#header_slider .bg_image.mobile {
    display:none
}

#header_slider .video_wrap {
    position:absolute
}

#header_slider .video_wrap.type1 {
    position: absolute;
    top: 50%;
    left: auto;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

#header_slider .video_wrap.type2 {
    position: absolute;
    top: 0;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform:translateX(-50%)
}

#header_slider .video_wrap.type1 video {
    height: 100%;
    width:auto
}

#header_slider .video_wrap.type2 video {
    width: 100%;
    height:auto
}

#header_slider .youtube_inner {
    padding-top: 56.25%;
    position: relative;
    width:100%
}

#header_slider .slide-youtube {
    height: 100% !important;
    position: absolute;
    left: 0;
    top: 0;
    width:100% !important
}

#header_slider .slick-dots {
    display:none !important
}

#header_slider_nav_wrap {
    position: absolute;
    z-index: 100;
    bottom: 20px;
    width: 995px;
    height: 100px;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform:translateX(-50%)
}

#header_slider_nav_wrap.stop_animation .slick-track {
    transform:translate3d(0px, 0px, 0px) !important
}

@media screen and (max-width: 750px) {
    #header_slider_nav_wrap.stop_animation .slick-track {
        transform:translate3d(65px, 0px, 0px) !important
    }
}

#header_slider_nav_wrap.two_item {
    width:640px
}

#header_slider_nav {
    width: 940px;
    position: relative;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#header_slider_nav_wrap.two_item #header_slider_nav {
    width:640px
}

#header_slider_nav_wrap.stop_animation #header_slider_nav {
    -ms-justify-content: center;
    -webkit-justify-content: center;
    justify-content:center
}

#header_slider_nav .nav_item {
    width: 300px;
    height: 100px;
    margin: 0 10px;
    overflow: hidden;
    position: relative;
    background: #000;
    cursor:pointer
}

#header_slider_nav .nav_image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index:1
}

#header_slider_nav .nav_catch {
    font-size: 14px;
    padding: 0 50px 0 30px;
    opacity: 0;
    z-index: 3;
    line-height: 1.8;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

#header_slider_nav .nav_item:after {
    width: 300px;
    height: 100px;
    content: '';
    display: block;
    background: #fff;
    position: absolute;
    z-index: 2;
    top: 0;
    left: -300px;
    -webkit-transition: all .5s cubic-bezier(.22, 1, .36, 1) 0s;
    transition:all .5s cubic-bezier(.22, 1, .36, 1) 0s
}

#header_slider_nav .nav_item:hover .nav_catch, #header_slider_nav .nav_item:hover:before, #header_slider_nav .nav_item.slick-center .nav_catch, #header_slider_nav .nav_item.slick-center:before, #header_slider_nav_wrap.stop_animation .nav_item.slick-current .nav_catch, #header_slider_nav_wrap.stop_animation .nav_item.slick-current:before {
    -webkit-animation: opacityAnimation .7s ease forwards 0s;
    animation:opacityAnimation .7s ease forwards 0s
}

#header_slider_nav .nav_item:hover:after, #header_slider_nav .nav_item.slick-center:after, #header_slider_nav_wrap.stop_animation .nav_item.slick-current:after {
    left:0
}

#header_slider_nav .nav_item.slick-center {
    pointer-events:none
}
/* ヘッダーへアイコン */
#header_sns {
    z-index: 20;
	margin-right: 30px;
    text-align: center;
    position: absolute;
    right: -4px;
    top: 0;
    font-size: 0;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.header_sns li {
    display: inline-block;
    position:relative
}

.header_sns li a {
    display: block;
    overflow: hidden;
    width: 30px;
    height: 80px;
    line-height: 80px;
    text-align: center;
    position:relative
}

.header_sns li a span {
    display:none
}

.header_sns li a:before {
    font-family: 'Font Awesome 6 Free';
    font-size: 15px;
    display: block;
    position: absolute;
    top: 1px;
    left: 0;
    right: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

.header_sns li.twitter a:before {
    content: '\e904'
}

.header_sns li.facebook a:before {
    content: '\e902'
}

.header_sns li.insta a:before {
    content: '\f16d'
}

.header_sns li.pinterest a:before {
    content: '\e905'
}

.header_sns li.google a:before {
    content: '\e900'
}

.header_sns li.youtube a {
    width:45px
}

.header_sns li.youtube a:before {
    content: '\ea9e'
}

.header_sns li.contact a:before {
    content: '\f003';
	font-size: 22px
}

.header_sns li.rss a:before {
    content: '\e90b'
}

.carousel_arrow {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    position: absolute;
    cursor: pointer;
    z-index: 10;
    overflow: hidden;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

.carousel_arrow:before {
    font-family: "Font Awesome 6 Free";
	font-weight: 900;
    color: #000;
    font-size: 18px;
    display: block;
    height: 50px;
    line-height: 50px;
    width: 100%;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

.carousel_arrow.prev_item:before {
    content: '\f053'
}

.carousel_arrow.next_item:before {
    content: '\f054';
    left: 0;
    right:0
}

.carousel_arrow:hover:before {
    color:#ccc !important
}

.carousel_arrow.prev_item {
    left:-20px
}

.carousel_arrow.next_item {
    right:-20px
}

#header_slider_nav_wrap .carousel_arrow:before {
    color:#fff
}

#header_slider_nav_wrap .carousel_arrow {
    margin-top:3px
}

#header_slider .catch.animation_type1, #header_slider .desc, #header_slider .design_button {
    opacity: 0;
    position:relative
}

#header_slider .catch.animation_type1.animate, #header_slider .desc.animate, #header_slider .design_button.animate {
    -webkit-animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 0s;
    animation:slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards 0s
}

#header_slider .catch.animation_type2 span {
    opacity: 0;
    position:relative
}

#header_slider .catch.animation_type2 span.animate {
    -webkit-animation: text_animation .5s ease forwards 0s;
    animation:text_animation .5s ease forwards 0s
}

body.stop_index_slider_animation #header_slider .caption .animate_item, body.stop_index_slider_animation #header_slider .catch.animation_type2 span {
    opacity:1
}

#header_slider .item.bg_animation_type1.animate .bg_image {
    -webkit-animation: zoomIn 30s;
    animation:zoomIn 30s
}

#header_slider .item.bg_animation_type2.animate .bg_image {
    -webkit-animation: zoomOut 30s;
    animation:zoomOut 30s
}

#header_slider .item.bg_animation_type3.animate .bg_image {
    width: -webkit-calc(100% + 200px);
    height: -webkit-calc(100% + 200px);
    width: calc(100% + 200px);
    height: calc(100% + 200px);
    -webkit-animation: bg_image_move_right 30s;
    animation:bg_image_move_right 30s
}

#header_slider .item.bg_animation_type4.animate .bg_image {
    width: -webkit-calc(100% + 200px);
    height: -webkit-calc(100% + 200px);
    width: calc(100% + 200px);
    height: calc(100% + 200px);
    -webkit-animation: bg_image_move_left 30s;
    animation:bg_image_move_left 30s
}

#header_slider .item.bg_animation_type5.animate .bg_image {
    width: -webkit-calc(100% + 200px);
    height: -webkit-calc(100% + 200px);
    width: calc(100% + 200px);
    height: calc(100% + 200px);
    -webkit-animation: bg_image_move_up 30s;
    animation:bg_image_move_up 30s
}

#header_slider .item.bg_animation_type6.animate .bg_image {
    width: -webkit-calc(100% + 200px);
    height: -webkit-calc(100% + 200px);
    width: calc(100% + 200px);
    height: calc(100% + 200px);
    -webkit-animation: bg_image_move_down 30s;
    animation:bg_image_move_down 30s
}

@-webkit-keyframes bg_image_move_right {
    0% {
        transform:translate3d(-200px, 0, 0)
    }

    100% {
        transform:translate3d(0px, 0, 0)
    }
}

@keyframes bg_image_move_right {
    0% {
        transform:translate3d(-200px, 0, 0)
    }

    100% {
        transform:translate3d(0px, 0, 0)
    }
}

@-webkit-keyframes bg_image_move_left {
    0% {
        transform:translate3d(0px, 0, 0)
    }

    100% {
        transform:translate3d(-200px, 0, 0)
    }
}

@keyframes bg_image_move_left {
    0% {
        transform:translate3d(0px, 0, 0)
    }

    100% {
        transform:translate3d(-200px, 0, 0)
    }
}

@-webkit-keyframes bg_image_move_up {
    0% {
        transform:translate3d(0, 0, 0)
    }

    100% {
        transform:translate3d(0, -200px, 0)
    }
}

@keyframes bg_image_move_up {
    0% {
        transform:translate3d(0, 0, 0)
    }

    100% {
        transform:translate3d(0, -200px, 0)
    }
}

@-webkit-keyframes bg_image_move_down {
    0% {
        transform:translate3d(0, -200px, 0)
    }

    100% {
        transform:translate3d(0, 0, 0)
    }
}

@keyframes bg_image_move_down {
    0% {
        transform:translate3d(0, -200px, 0)
    }

    100% {
        transform:translate3d(0, 0, 0)
    }
}

body.home #header_logo a, body.home #global_menu, body.home #header_search, #header_slider_nav_wrap {
    opacity:0
}

body.home #header_logo a.animate, body.home #global_menu.animate, body.home #header_search.animate, #header_slider_nav_wrap.animate {
    -webkit-animation: opacityAnimation 1s ease forwards 0s;
    animation:opacityAnimation 1s ease forwards 0s
}

body.stop_index_slider_animation #header_logo a, body.stop_index_slider_animation #global_menu, body.stop_index_slider_animation #header_search, body.stop_index_slider_animation #header_slider_nav_wrap {
    opacity:1
}

body.no_index_header_content #header {
    border-bottom:1px solid #ddd
}

body.no_index_header_content.header_fix #header {
    border-bottom:none
}

body.no_index_header_content #index_content_builder {
    border-top: 1px solid #ddd;
    padding:80px 0 0
}

.cb_headline {
    line-height: 1.5;
    font-weight: 600;
    text-align:center
}

.cb_headline span {
    display:block
}

.cb_headline .sub_headline {
    font-size: 16px;
    font-weight:500
}

.white_content + .white_content {
    padding-top:0 !important
}

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

#index_news_ticker_wrap {
    border-bottom:1px solid #ddd
}

#index_news_ticker {
    width: 785px;
    height: 70px;
    overflow: hidden;
    margin:0 auto
}

#index_news_ticker .item {
    height: 70px;
    position: relative;
    padding: 1px 30px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items:center
}

#index_news_ticker .date {
    width: 93px;
    font-size: 14px;
    color: #999;
    font-family:Arial
}

#index_news_ticker .category {
    font-size: 12px;
    text-align: center;
    color: #fff;
    border-radius: 30px;
    margin-right: 20px;
    min-width: 90px;
    height: 30px;
    line-height: 31px;
    padding: 0 20px;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box;
	background-color: #de2031;
}

body.one_news_category #index_news_ticker.post_type_news .category {
    display:none
}

#index_news_ticker .title {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    visibility: visible;
    word-wrap: break-word;
    word-break: break-all;
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex:1 1 0%
}

#index_news_ticker .title br {
    display:none
}

#index_news_ticker .title a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    visibility:visible
}

.tab_content_top {
    width: 100%;
    height: 600px;
    position: relative;
    overflow:hidden
}

.tab_content_top .bg_image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index:1
}

.tab_content_top .bg_image.mobile {
    display:none
}

.tab_content_top .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index:2
}

.tab_content_top_inner {
    color: #fff;
    width: 850px;
    margin: 0 auto;
    z-index: 3;
    position: relative;
    text-align: center;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.tab_content_top .catch {
    line-height: 1.5;
    font-weight:600
}

.tab_content_top .desc {
    line-height: 2.4;
    margin:16px 0 0
}

.tab_content_top .design_button {
    margin-top:30px
}

.tab_content_top .bg_image[data-parallax-image] {
    transition:none
}

.tab_content_top .bg_image.parallax-ready[data-parallax-image] {
    transition-property: background-position;
    transition-duration: 1s;
    transition-timing-function:cubic-bezier(0, .33, .07, 1.03)
}

.tab_content_top .tab {
    width: 1150px;
    height: 70px;
    position: absolute;
    bottom: 0;
    z-index: 3;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    justify-content:center
}

.tab_content_top .tab .item {
    cursor: pointer;
    font-size: 16px;
    height: 70px;
    line-height: 70px;
    min-width: 200px;
    color: #fff;
    background: rgba(255, 255, 255, .3);
    text-align: center;
    margin: 0 7px;
    padding: 0 20px;
    border-radius: 10px 10px 0 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

.tab_content_top .tab .item.active, .tab_content_top .tab .item:hover {
    color: #000;
    background:#fff
}

.tab_content_bottom {
    width: 1150px;
    margin: 0 auto;
    padding: 100px 70px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.tab_content_bottom .item {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    overflow: hidden;
    top: 100px;
    left: 70px;
    right: 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: opacity .4s ease;
    transition:opacity .4s ease
}

.tab_content_bottom .item.active {
    opacity: 1;
    pointer-events: initial;
    position: relative;
    top: 0;
    left:0
}

.tab_content_bottom .item_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.tab_content_bottom .image_area {
    width: 500px;
    margin-right: 60px;
    overflow: hidden;
    position:relative
}

.tab_content_bottom .image {
    max-width: 100%;
    height:auto
}

.tab_content_bottom .content {
    width:calc(100% - 560px)
}

.tab_content_bottom .title {
    font-size: 26px;
    color: #0071a2;
    margin-bottom:42px
}

.tab_content_bottom .catch {
    font-size: 24px;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom:32px
}

.tab_content_bottom .desc {
    line-height:2.4
}

.tab_content_bottom .design_button {
    margin-top:70px
}

.tab_content_bottom .slick-dots {
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%;
    z-index: 10;
    text-align:center
}

.tab_content_bottom .slick-dots li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 4px;
    font-size:12px
}

.tab_content_bottom .slick-dots button {
    cursor: pointer;
    border: none;
    color: transparent;
    width: 10px;
    height: 10px;
    display: block;
    font-size: 0;
    background: 0 0;
    position:relative
}

.tab_content_bottom .slick-dots button:before {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    line-height: 10px;
    background: #ddd;
    border-radius: 20px;
    position: absolute;
    top: 0;
    left:0
}

.tab_content_bottom .slick-dots button:hover:before, .tab_content_bottom .slick-dots .slick-active button:before {
    background:#000
}

.cb_tab_content .inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

.cb_service_list {
    background: #f6f6f6;
    padding:0 !important
}

.cb_service_top {
    text-align: center;
    width: 1150px;
    margin: 0 auto;
    padding: 90px 70px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.cb_service_top .cb_desc {
    line-height: 2.4;
    margin:55px 0 0
}

.pc .cb_service_middle {
    width: 100%;
    height: 600px;
    position: relative;
    overflow:hidden
}

.pc .cb_service_middle:before {
    opacity: 1 !important;
    z-index: 1;
    margin: 0 auto;
    content: '';
    display: block;
    width: 1150px;
    height: 600px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    position: absolute;
    top: 0;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.pc .cb_service_item_list {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.pc .cb_service_item_list .item {
    height: 100%;
    border-right: 1px solid rgba(255, 255, 255, .3);
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.pc .cb_service_item_list .item:last-of-type {
    border-right:none
}

.pc .cb_service_item_list a {
    color: #fff !important;
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.pc .cb_service_item_list .item a:after {
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 1;
    opacity: 0;
    -webkit-transition: opacity .2s ease;
    transition:opacity .2s ease
}

.pc .cb_service_item_list .item.active a:after {
    opacity:1
}

.pc .cb_service_item_list .content {
    position: absolute;
    left: 0;
    bottom: -100%;
    padding: 0 50px 50px;
    z-index: 2;
    -webkit-transition: bottom .7s cubic-bezier(.22, 1, .36, 1);
    transition:bottom .7s cubic-bezier(.22, 1, .36, 1)
}

.pc .cb_service_item_list .title {
    line-height: 1.2;
    font-weight: 600;
    word-break:break-all
}

.pc .cb_service_item_list .title span {
    display:block
}

.pc .cb_service_item_list .title .main_title {
    font-size:28px
}

.pc .cb_service_item_list .title .sub_title {
    margin-top:13px
}

.pc .cb_service_item_list .desc {
    opacity: 0;
    top: 15px;
    line-height: 2.4;
    margin: 35px 0 0;
    position:relative
}

.pc .cb_service_item_list .bottom_title {
    opacity: 0;
    top: 15px;
    font-weight: 600;
    margin: 38px 0 0;
    line-height: 1;
    position: relative;
    display: inline-block;
    padding:0 20px 0 0
}

.pc .cb_service_item_list .bottom_title:after {
    font-family: 'Font Awesome 6 Free';
    content: '\f054';
    font-size: 14px;
    display: block;
    position: absolute;
    top: 2px;
    right: 0;
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: opacity .5s ease 0s;
    transition:opacity .5s ease 0s
}

.pc .cb_service_item_list .bottom_title span {
    -webkit-transition: opacity .5s ease 0s;
    transition:opacity .5s ease 0s
}

.pc .cb_service_item_list .item.active .desc {
    opacity: 1;
    top: 0;
    -webkit-transition: all .7s ease .2s;
    transition:all .7s ease .2s
}

.pc .cb_service_item_list .item.active .bottom_title {
    opacity: 1;
    top: 0;
    -webkit-transition: all .7s ease .4s;
    transition:all .7s ease .4s
}

.pc .cb_service_item_list .bottom_title:hover:after {
    opacity:.5
}

.pc .cb_service_item_list .bottom_title:hover span {
    opacity:.5
}

.pc .cb_service_image_list {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index:1
}

.pc .cb_service_image_list .image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transform: scale(1.1);
    transform:scale(1.1)
}

.pc .cb_service_image_list .image.active {
    opacity: 1;
    -webkit-transform: scale(1);
    transform:scale(1)
}

.pc .cb_service_image_list .image .overlay {
    width: 100%;
    height:100%
}

.cb_service_bottom {
    text-align: center;
    width: 1150px;
    margin: 0 auto;
    padding: 70px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.cb_service_list.cb_content:last-of-type .cb_service_bottom {
    padding-bottom:150px
}

.cb_service_list .inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

.pc .cb_service_list .cb_service_item_list.inview, .pc .cb_service_list .cb_service_image_list.inview {
    position:absolute
}

.cb_news_list {
    width: 1150px;
    margin: 0 auto;
    padding: 90px 130px 100px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.cb_news_list .news_category_list {
    margin:67px auto 70px
}

.cb_news_list .design_button {
    margin-top:70px
}

.cb_news_list .news_list {
    position: relative;
    display:none
}

.cb_news_list .news_list.active {
    display: block;
    -webkit-animation: news_list_animation 1s cubic-bezier(.22, 1, .36, 1) 0s;
    animation:news_list_animation 1s cubic-bezier(.22, 1, .36, 1) 0s
}

@-webkit-keyframes news_list_animation {
    0% {
        opacity: 0;
        bottom:-20px
    }

    100% {
        opacity: 1;
        bottom:0
    }
}

@keyframes news_list_animation {
    0% {
        opacity: 0;
        bottom:-20px
    }

    100% {
        opacity: 1;
        bottom:0
    }
}

.cb_news_list .inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

.cb_news_list .no_category_list {
    margin-top:65px
}

.cb_project_list {
    width: 1150px;
    margin: 0 auto;
    padding: 90px 130px 100px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.cb_project_list .cb_desc {
    line-height: 2.4;
    margin: 55px 0 0;
    text-align:center
}

.cb_project_list .project_list {
    margin:60px -131px -70px
}

.cb_project_list .design_button {
    margin-top:70px
}

.cb_project_list .inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

.cb_free_space.type1 {
    width: 1150px;
    margin: 0 auto;
    padding: 0 130px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.cb_free_space.type2 {
    width:auto
}

.cb_free_space .inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

.cb_free_space .index_free_design_content {
    text-align:center
}

.cb_free_space .index_free_design_content .catch {
    font-weight: 600;
    line-height: 1.5;
    margin:0 0 20px
}

.cb_free_space .index_free_design_content img {
    display: block;
    margin:30px auto 0
}

#page_header {
    width: 100%;
    height: 600px;
    position: relative;
    overflow: hidden;
    background:#000
}

#page_header_inner {
    z-index: 3;
    width: 830px;
    position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform:translate(-50%, -50%)
}

#page_header .catch {
    color: #fff;
    font-weight: 600;
    line-height: 1.5;
    text-align:center
}

#page_header .desc {
    font-size: 18px;
    color: #fff;
    line-height: 2;
    text-align: center;
    margin:15px 0 0
}

#page_header .overlay {
    width: 100%;
    height: 100%;
    z-index: 2;
    position: absolute;
    top: 0;
    left:0
}

#page_header .bg_image {
    width: 100%;
    height: 100%;
    z-index: 1;
    position: absolute;
    top: 0;
    left:0
}

#page_header .bg_image.mobile {
    display:none
}

#page_header .catch.animation_type1, #page_header .desc {
    opacity: 0;
    position:relative
}

#page_header .catch.animation_type1.animate, #page_header .desc.animate {
    -webkit-animation: slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards .5s;
    animation:slideUp 1.3s cubic-bezier(.165, .84, .44, 1) forwards .5s
}

#page_header .catch.animation_type2 span {
    opacity: 0;
    position:relative
}

#page_header .catch.animation_type2 span.animate {
    -webkit-animation: text_animation .5s ease forwards 0s;
    animation:text_animation .5s ease forwards 0s
}

@-webkit-keyframes text_animation {
    0% {
        opacity: 0;
        left:15px
    }

    100% {
        opacity: 1;
        left:0
    }
}

@keyframes text_animation {
    0% {
        opacity: 0;
        left:15px
    }

    100% {
        opacity: 1;
        left:0
    }
}

#archive_square_headline {
    z-index: 1000;
    width: 200px;
    height: 200px;
    color: #fff;
    position: relative;
    margin: 0 auto;
    top:-100px
}

#archive_square_headline h3 {
    width: 100%;
    text-align: center;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

#archive_square_headline .sub_headline {
    margin-top:10px
}

#archive_square_headline span {
    display:block
}

.archive_desc {
    line-height: 2.4;
    margin: -10px 50px 90px;
    text-align:center
}

#bread_crumb {
    z-index: 3;
    width: 100%;
    border-bottom:1px solid #ddd
}

#bread_crumb ul {
    width: 1150px;
    margin: 0 auto;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    visibility:visible
}

#bread_crumb li {
    display: inline;
    font-size: 12px;
    margin: 0 10px 0 0;
    padding: 0 20px 0 0;
    position:relative
}

#bread_crumb li:after {
    font-family: 'Font Awesome 6 Free';
    content: '\f054';
    font-size: 10px;
	font-weight: 900;
    color: #000;
    display: inline-block;
    line-height: 10px;
    height: 35px;
    position: absolute;
    right: 0;
    bottom: -23px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

#bread_crumb li:last-of-type:after {
    display:none
}

#bread_crumb, #bread_crumb li.last {
    color:#000
}

#bread_crumb li a {
    color: #000;
    height: 59px;
    line-height: 60px;
    display: inline-block;
    -webkit-transition: opacity .2s ease-in-out;
    transition:opacity .2s ease-in-out
}

#bread_crumb li.category a {
    display:none
}

#bread_crumb li.category a:first-of-type, #bread_crumb li.category a:only-of-type {
    display:inline-block
}

#bread_crumb li.home a {
    position: relative;
    width:16px
}

#bread_crumb li.home a span {
    opacity:0
}

#bread_crumb li.home a:before {
    font-family:  "Font Awesome 6 Free";
    content: '\f015';
	font-weight: 900;
    font-size: 12px;
    color: #000;
    display: inline-block;
    height: 100%;
    line-height: 1;
    top: 0;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}
@media (max-width: 767px) {
	#bread_crumb li:after {
    font-family: 'Font Awesome 6 Free';
    content: '\f054';
    font-size: 12px;
		font-weight: 400;
    color: #000;
    display: inline-block;
    line-height: 1;
    height: 35px;
}
	
}
#project_archive {
    padding: 0 0 150px;
    width: 1150px;
    margin: 0 auto;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    z-index: 100;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

body.no_page_nav #project_archive {
    padding-bottom:80px
}

.project_list {
    margin: 0 -1px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

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

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

.project_list .image_wrap {
    display: block;
    width: 100%;
    height: 320px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

.project_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

.project_list .title {
    font-size: 20px;
    font-weight: 600;
	font-family: "m-plus-1p", sans-serif;
    line-height: 1.5;
    color: #fff;
    max-height: 3em;
    word-break: break-all;
    overflow: hidden;
    visibility: visible;
    padding: 0 60px;
    position: absolute;
    z-index: 3;
    left: 0;
    bottom:25px;
	
}

.project_list .title span {
	font-size: 21px;
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3
}

.project_list .desc {
    color: #000;
    line-height: 2.4;
    margin: 20px 60px 0;
    max-height: 4.8em;
    word-break: break-all;
    overflow: hidden;
    visibility:visible
}

.project_list .desc span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

.project_list .category {
    font-weight: 600;
    height: 70px;
    line-height: 50px;
    border-top: 3px solid #0071a2;
    display: inline-block;
    margin-left:0px
}

body.one_project_category .project_list .category {
    display:none
}

.project_list .image:after {
    content: '';
    display: block;
    width: 100%;
    height: 50%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .7) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .7) 100%);
    background:linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .7) 100%)
}

#project_archive .page_navi {
    margin-top:0
}

#project_archive.inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

#project_title_area {
    margin:0 0 30px
}

#project_title_area .category {
    font-weight: 600;
    height: 70px;
    line-height: 70px;
    border-top: 3px solid #0071a2;
    display:inline-block
}

#project_title_area .image {
    width: 100%;
    height: 440px;
    position: relative;
    margin-bottom:-1px
}

#project_title_area .title {
    font-size: 24px;
    line-height: 1.5;
    border: 1px solid #ddd;
    padding:30px 40px
}

#related_project {
    margin: 60px 0 -46px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#related_project .design_headline2 {
    font-size: 20px !important;
    margin:0 -40px 70px 0 !important
}

#related_project .post_list {
    margin: 0 55px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#related_project .item {
    width: calc(50% - 19px);
    margin: 0 38px 40px 0;
    position:relative
}

#related_project .item:nth-of-type(2n) {
    margin-right:0
}

#related_project .image_wrap {
    margin: 0 0 15px;
    display: block;
    width: 100%;
    height: 176px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

#related_project .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

#related_project .title {
    font-weight: 500 !important;
    font-size: 16px;
    line-height: 1.6;
    max-height: 3.2em;
    overflow: hidden;
    visibility: visible;
    word-wrap: break-word;
    word-break:break-all
}

#related_project .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

#service_archive {
    padding: 0 0 150px;
    width: 1150px;
    margin: 0 auto;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#service_list {
    margin:0 60px
}

#service_list .item {
    position: relative;
    height: 586px;
    overflow:hidden
}

#service_list .content {
    height: 100%;
    width: 50%;
    position: absolute;
    right: 0;
    top: 0;
    z-index:2
}

#service_list .content_inner {
    padding: 70px;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#service_list .item:nth-child(even) .content {
    right: auto;
    left:0
}

#service_list .title {
    font-weight: 600;
    line-height: 1.5;
    margin-top:8px
}

#service_list .title a {
    color: #fff;
    -webkit-transition: opacity .3s ease-in-out;
    transition:opacity .3s ease-in-out
}

#service_list .title a:hover {
    opacity:.5
}

#service_list .title span {
    display:block
}

#service_list .main_title br {
    display:none
}

#service_list .sub_title {
    font-weight:500
}

#service_list .catch {
    font-weight: 600;
    line-height: 1.5;
    color: #fff;
    margin-top:40px
}

#service_list .desc {
    line-height: 2.4;
    color: #fff;
    margin-top: 30px;
    max-height: 7.2em;
    overflow: hidden;
    visibility:visible
}

#service_list .desc span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3
}

#service_list .design_button {
    margin: 37px 0 0;
    text-align:left
}

#service_list .design_button a {
    text-align:center
}

#service_list .image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index:1
}

#service_archive.inview {
    opacity: 0;
    position: relative;
    top: 40px;
    z-index: 100;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

#post_title2 {
    font-size: 26px;
    border-bottom: 1px solid #ddd;
    padding-right: 40px;
    margin: -40px -40px 40px 0;
    height: 159px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#post_title2 .title {
    bottom: -1px;
    font-size: 24px;
    line-height: 1.5;
    height: 156px;
    display: inline-block;
    position: relative;
    color: #0070a4;
    border-bottom: 3px solid #0070a4;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items:center
}

#post_title2 .title span {
    padding-top:3px
}

#post_image2 {
    width: 100%;
    height: 440px;
    position: relative;
    margin: 0 0 53px 0
}
#post_image3 {
    width: 100%;
    height: 220px;
    position: relative;
    margin: 0 0 53px 0
}
#post_image4 {
    width: 100%;
    height: auto;
    position: relative;
    margin: 0 0 53px 0
}
#service_banner {
    margin: 50px 0 0;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#service_banner .design_headline2 {
    font-size: 20px !important;
    margin:0 -40px 60px 0 !important
}

#service_banner .item a {
    height: 200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#service_banner .image_wrap {
    display: block;
    width: 50%;
    height: 200px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

#service_banner .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

#service_banner .content {
    width: 50%;
    position:relative
}

#service_banner .content_inner {
    padding: 0 60px;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#service_banner .title {
    font-weight: 600;
    line-height:1.5
}

#service_banner .title span {
    display:block
}

#service_banner .main_title {
    font-size: 24px;
    color:#0070a4
}

#service_banner .desc {
    font-size: 14px;
    margin-top: 0;
    line-height: 2.2;
    color: #000;
    max-height: 6.6em;
    overflow: hidden;
    visibility:visible
}

#service_banner .desc span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3
}

#company_archive_top {
    padding: 0 0 1px;
    width: 1150px;
    margin: 0 auto;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#company_archive_bottom {
    background:#f6f6f6
}

#company_archive_bottom_inner {
    padding: 70px 0 150px;
    width: 1150px;
    margin: 0 auto;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#company_archive_bottom .top_catch {
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
    font-size: 28px;
    margin:-5px 0 63px
}

#company_list {
    margin: 0 60px -40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#company_list .item {
    width: calc(50% - 1px);
    margin: 0 2px 0 0;
    position:relative
}

#company_list .item:nth-child(2n) {
    margin-right:0
}

#company_list a {
    display: block;
    width: 100%;
    height:100%
}

#company_list .image_wrap {
    display: block;
    width: 100%;
    height: 260px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

#company_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

#company_list .title {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    color: #fff;
    padding: 0 60px;
    position: absolute;
    z-index: 3;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all .35s ease;
    transition:all .35s ease
}

#company_list .title span {
    display:block
}

#company_list .title .main_title {
    font-size:24px
}

#company_list .title .sub_title {
    font-size: 14px;
    font-weight:500
}

#company_list a:hover .title {
    left:10px
}

#company_list .catch {
    line-height: 1.8;
    padding: 35px 50px;
    font-size: 18px;
    font-weight:600
}

#company_list .image:after {
    content: '';
    display: block;
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: -moz-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%);
    background:linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%)
}

#project_archive .page_navi {
    margin-top:0
}

#company_archive.inview {
    opacity: 0;
    position: relative;
    top: 40px;
    z-index: 100;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

.single_company_catch {
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
    font-size: 28px;
    margin-bottom:52px
}

.philosophy_image1 {
    margin: 0 auto;
    display: block;
    padding:22px 0 28px
}

.outline_table {
    margin:50px 0 0 !important
}

.outline_table th {
    width: 132px !important;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.outline_table td {
    width:auto !important
}

.zuhan_table {
	width: 500px;
    margin:5px 0 0 !important
}

.zuhan_table th {
    width: 75% !important;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.zuhan_table td {
    width:75% !important
}

.history_table {
    font-size: 14px;
    margin:60px 0 0 !important
}

.history_table .year {
    width: 130px !important;
    padding: 0;
    color: #006fa6;
    font-size: 16px;
    font-weight: 700;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.history_table .month {
    width: 70px !important;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.history_table td {
    width:auto !important
}
/*括弧ol,li*/
ol.hoge li {
  position: relative;
  list-style-type: none;
}

ol.hoge li:before {
  position: absolute;
  right: calc(100% + 0.5rem);  /* 0.5remは連番とテキストとの余白 */
  content: "(" counter(list-item) ")";
}
.relation-link{
	font-size: 100%;
    display: block;
    padding: 5px 10px;
    border: 1px solid #ccdfec;
    border-radius: 5px;
    margin-bottom: 20px;
    clear: both;
}
.relation-link-bg{
background: #ccdfec;
font-size: 116%;
line-height: 1.3em;
color: #333;
padding: 6px 10px 4px;
margin-bottom: 0.7em;
border-radius: 5px;
	clear: both;}

.relation-link-n{
	font-size: 100%;
    display: block;
    padding: 5px 10px;
    border: 1px solid #ccdfec;
    border-radius: 5px;
    margin-bottom: 20px;
    clear: both;
}
.relation-link-n-bg{
background: #FDC9CA;
font-size: 116%;
line-height: 1.3em;
color: #333;
padding: 6px 10px 4px;
margin-bottom: 0.7em;
border-radius: 5px;
	clear: both;}

.relation-link-k{
	font-size: 100%;
    display: block;
    padding: 5px 10px;
    border: 1px solid #ccdfec;
    border-radius: 5px;
    margin-bottom: 20px;
    clear: both;
}
.relation-link-k-bg{
background: #ffe7c9;
font-size: 116%;
line-height: 1.3em;
color: #333;
padding: 6px 10px 4px;
margin-bottom: 0.7em;
border-radius: 5px;
	clear: both;}

.relation-link-sb-bg{
background: #008eed;
font-size: 116%;
line-height: 1.3em;
color: #fff;
padding: 6px 10px 4px;
margin-bottom: 0.7em;
border-radius: 5px;
	clear: both;}

.relation-link-rec-bg{
background: #ccdfec;
	opacity: 0.8;
font-size: 116%;
line-height: 1.3em;
color: #fff;
padding: 6px 10px 4px;
margin-bottom: 0.7em;
border-radius: 5px;
	clear: both;}

.relation-link-line-2{
border: 3px solid #ccdfec;
	opacity: 1;
font-size: 116%;
line-height: 1.3em;
color: #fff;
padding: 6px 10px 4px;
margin-bottom: 0.7em;
border-radius: 5px;
	clear: both;}
#access_map {
    margin-top:50px
}

.qt_google_map {
    height:500px !important
}

.qt_google_map .qt_googlemap_embed {
    height:500px !important
}

#access_map .qt_google_map .pb_googlemap_custom-overlay-inner {
    top: -104px;
    left: -50px;
    width: 100px !important;
    height:100px !important
}

#access_info {
    margin-top: 60px;
    text-align:center
}

#access_info .headline {
    font-size: 18px;
    margin:0 0 10px
}

#access_info p {
    margin:0
}

#access_info .link a {
    color: #006da8;
    font-weight: 600;
    padding: 10px 0;
    display:block
}

#access_info .link a:hover {
    color:#00466d
}

#partner_list {
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    margin-top: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#partner_list .item {
    width: 50%;
    height: 320px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#partner_list .item img {
    display: block;
    margin:80px auto 0
}

#partner_list .item:nth-child(1) img {
    margin-top:71px
}

#partner_list .item p {
    position: absolute;
    bottom: 25px;
    padding:0 38px
}

#tcd_lp_page_table {
    font-size: 14px;
    margin:0 0 60px
}

#tcd_lp_page_table th {
    width: 200px !important;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#tcd_lp_page_table td {
    width:auto !important
}

.faq_list {
    margin:0 0 100px
}

.faq_list .item {
    margin-top:-1px
}

.faq_list .question {
    cursor: pointer;
    font-weight: 500;
    font-size: 16px !important;
    border: 1px solid #ddd;
    line-height: 1.8 !important;
    margin: 0 !important;
    padding: 23px 55px 19px 30px !important;
    position: relative;
    background: #fff;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

.faq_list .question:before {
    content: '';
    position: absolute;
    right: 22px;
    top: 36px;
    display: block;
    width: 13px;
    height: 1px;
    background:#000
}

.faq_list .question:after {
    content: '';
    position: absolute;
    right: 28px;
    top: 30px;
    display: block;
    width: 1px;
    height: 13px;
    background:#000
}

.faq_list .question.active:after {
    display:none
}

.faq_list .answer {
    border: 1px solid #ddd;
    border-top: none;
    padding: 48px 55px 50px;
    background:#f7f7f7
}

#page_contents_link {
    display: block;
    height: 150px;
    width: 100%;
    text-decoration: none;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 10;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .7) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .7) 100%);
    background:linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .7) 100%)
}

#page_contents_link:before {
    color: #fff;
    font-family: 'design_plus';
    content: '\e90e';
    font-size: 22px;
    display: block;
    position: absolute;
    margin-bottom: 15px;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-animation: slideUpDown 1.8s ease infinite 0s;
    animation:slideUpDown 1.8s ease infinite 0s
}

#page_contents_link {
    opacity:0
}

#page_contents_link.animate {
    -webkit-animation: opacityAnimation 1s ease forwards .7s;
    animation:opacityAnimation 1s ease forwards .7s
}

#news_archive {
    padding: 0 0 150px;
    width: 1150px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.news_category_list {
    text-align: center;
    font-size: 0;
    margin:0 0 100px
}

.news_category_list li {
    font-weight: 600;
    display: inline-block;
    font-size: 16px;
    margin:0 20px
}

.news_category_list li a {
    padding-top: 20px;
    display: block;
    position:relative
}

.news_category_list li a:before {
    content: '';
    height: 3px;
    width: 0;
    background: #0070a4;
    display: block;
    position: absolute;
    top:0
}

.news_category_list li.active a:before {
    width: 100%;
    -webkit-transition: all .5s cubic-bezier(.22, 1, .36, 1);
    transition:all .5s cubic-bezier(.22, 1, .36, 1)
}

.news_list .item {
    height: 70px;
    border: 1px solid #ddd;
    margin: 0 0 -1px;
    position: relative;
    padding: 0 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items:center
}

.news_list .item.animate {
    -webkit-animation: slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 0s;
    animation:slideUp 1s cubic-bezier(.165, .84, .44, 1) forwards 0s
}

.news_list .date {
    width: 93px;
    font-size: 14px;
    color: #999;
    font-family:Arial
}

.news_list .category {
    font-size: 12px;
    text-align: center;
    color: #fff;
    border-radius: 30px;
    margin-right: 20px;
    min-width: 90px;
    height: 30px;
    line-height: 30px;
    padding: 0 20px;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

body.one_news_category .news_list .category {
    display:none
}

.news_list .title {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    visibility: visible;
    word-wrap: break-word;
    word-break: break-all;
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex:1 1 0%
}

.news_list .title a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    visibility:visible
}

#news_archive.inview {
    opacity: 0;
    position: relative;
    top: 40px;
    z-index: 100;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

#news_archive .entry-loading {
    text-align: center;
    width: 100%;
    display: none;
    height: 50px;
    line-height: 50px;
    font-size: 14px;
    margin-top: 50px;
    font-weight:600
}

#news_archive .entry-loading.is-show {
    display:block
}

#news_archive .entry-more {
    cursor: pointer;
    display: block;
    text-align: center;
    margin: 50px auto 0;
    width: 200px;
    height: 50px;
    line-height: 50px;
    border: 1px solid #ddd;
    background: #fff;
    -webkit-transition-property: background-color, color;
    -webkit-transition-duration: .2s;
    -webkit-transition-timing-function: ease;
    transition-property: background-color, color;
    transition-duration: .2s;
    transition-timing-function:ease
}

#news_archive .entry-more:hover {
    background:#fafafa
}

#news_archive .entry-more span {
    display: block;
    margin: 0;
    font-size: 14px;
    font-weight:500
}

#news_archive .entry-more.is-hide {
    display:none
}

.news_category_sort_button {
    text-align: center;
    font-size: 0;
    margin:0 0 100px
}

.news_category_sort_button li {
    font-weight: 600;
    display: inline-block;
    font-size: 16px;
    margin:0 20px
}

.news_category_sort_button li a {
    padding-top: 20px;
    display: block;
    position:relative
}

.news_category_sort_button li a:before {
    content: '';
    height: 3px;
    width: 0;
    background: #0070a4;
    display: block;
    position: absolute;
    top:0
}

.news_category_sort_button li.active a:before {
    width: 100%;
    -webkit-transition: all .5s cubic-bezier(.22, 1, .36, 1);
    transition:all .5s cubic-bezier(.22, 1, .36, 1)
}

.news_list_wrap {
    position: relative;
    display:none;
}

.news_list_wrap.active {
    display:block
}

.news_list_wrap .news_list .item {
    opacity: 0;
    position:relative
}

#single_news {
    background:#f6f6f6
}

#single_news_inner {
    width: 1150px;
    margin: 0 auto;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    padding: 60px 0 150px;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#single_news #article {
    width: 890px;
    margin: 0 auto;
    background: #fff;
    padding: 60px;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#news_next_prev_post {
    margin: 60px auto 0;
    width: 890px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#news_next_prev_post .item {
    height: 122px;
    width: 50%;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#news_next_prev_post .item:first-of-type {
    border-right:1px solid #ddd
}

#news_next_prev_post .item:only-of-type {
    padding-left:0
}

#news_next_prev_post a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background:0 0
}

#news_next_prev_post .image_wrap {
    display:none
}

#news_next_prev_post .title_area {
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

#news_next_prev_post .prev_post .title_area {
    padding:0 50px 0 60px
}

#news_next_prev_post .next_post .title_area {
    padding:0 60px 0 50px
}

#news_next_prev_post .title {
    position: relative;
    padding-left: 40px;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.6;
    max-height: 3.2em;
    overflow: hidden;
    visibility: visible;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    word-wrap: break-word;
    word-break:break-all
}

#news_next_prev_post .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

#news_next_prev_post .nav {
    display:none
}

#news_next_prev_post .next_post .title {
    padding:0 40px 0 0
}

#news_next_prev_post .title:after {
    z-index: 10;
    position: absolute;
    left: -3px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: 'design_plus';
    color: #000;
    font-size: 14px;
    font-weight: 500;
    display: block;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

#news_next_prev_post .prev_post .title:after {
    content: '\e90f'
}

#news_next_prev_post .next_post .title:after {
    content: '\e910';
    left: auto;
    right:-4px
}

#recent_news {
    width: 890px;
    margin:100px auto 0
}

#recent_news .headline {
    font-size: 22px;
    text-align: center;
    margin-bottom:70px
}

#recent_news .news_list {
    background:#fff
}

#recent_news .design_button {
    margin-top:70px
}

#blog_archive {
    padding: 0 0 150px;
    width: 1150px;
    margin: 0 auto;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    z-index: 100;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#blog_list {
    border-top:1px solid #ddd
}

body.search #blog_list {
    border-top:none
}

#blog_list .item {
    height: 410px;
    position: relative;
    border-bottom: 1px solid #ddd;
    padding: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#blog_list .image_link {
    display: block;
    width: 516px;
    height:294px
}

#blog_list .image_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    overflow:hidden
}

#blog_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

#blog_list .content {
    height: 294px;
    width: calc(100% - 516px);
    position: relative;
    padding-left: 60px;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#blog_list .content_inner {
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

#blog_list .meta {
    margin-bottom:30px
}

#blog_list .meta li {
    float:left
}

#blog_list .meta li:first-of-type {
    margin-right:16px
}

#blog_list .category a, #blog_list .pr_label {
    font-size: 12px;
    text-align: center;
    color: #fff;
    border-radius: 30px;
    min-width: 90px;
    height: 30px;
    line-height: 30px;
    padding: 0 20px;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#blog_list .date {
    font-size: 14px;
    color: #999;
    position: relative;
    height: 30px;
    line-height: 30px;
    font-family:Arial
}

#blog_list .title {
    font-weight: 600;
    line-height: 1.6;
    max-height: 3.2em;
    overflow: hidden;
    visibility: visible;
    word-wrap: break-word;
    word-break:break-all
}

#blog_list .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

#blog_list .desc {
    line-height: 2;
    margin: 20px 0 0;
    max-height: 4em;
    overflow: hidden;
    visibility: visible;
    word-wrap: break-word;
    word-break:break-all
}

#blog_list .desc span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

#blog_list .client {
    padding-left:0
}

body.author .author_profile {
    margin: 0 0 60px;
    border: none;
    border-top: 1px solid #ddd;
    padding:60px 60px 0
}

body.author .author_profile .name {
    margin:0 0 15px
}

body.author .author_profile .avatar_area {
    width: 140px;
    height:140px
}

body.author .author_profile .info {
    -webkit-width: calc(100% - 140px);
    width:calc(100% - 140px)
}

.page_navi {
    margin: 60px 0 0;
    z-index: 10;
    position:relative
}

.page_navi ul {
    margin: 0;
    font-size: 0;
    text-align:center
}

.page_navi li {
    display: inline-block;
    margin:0 -1px 0 0
}

.page_navi a, .page_navi a:hover, .page_navi span {
    color: #000;
    background: #fff;
    border: 1px solid #ddd;
    font-size: 14px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    display: inline-block;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.page_navi a:hover {
    color:#fff
}

.page_navi span.dots {
    background: 0 0;
    color:#333
}

.page_navi span.current {
    color: #fff;
    background: #000;
    border-color: #000;
    position:relative
}

.page_navi .next span, .page_navi .prev span {
    display:none
}

.page_navi .next:before, .page_navi .prev:before {
    font-family: 'design_plus';
    font-size: 11px;
    top: 1px;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

.page_navi .prev:before {
    content: '\e90f'
}

.page_navi .next:before {
    content: '\e910'
}

.page_navi .prev:hover:before, .page_navi .next:hover:before {
    color:#fff
}

#no_post {
    text-align: center;
    font-size: 14px;
    padding: 0;
    font-size: 20px;
    font-weight:600
}

body.search #no_post {
    padding-top:150px
}

#blog_archive.inview {
    opacity: 0;
    position: relative;
    top: 40px;
    -webkit-transition: all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s;
    transition:all 1.3s cubic-bezier(.165, .84, .44, 1) .3s, opacity 1.3s cubic-bezier(.165, .84, .44, 1) .3s
}

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

#post_title {
    margin-bottom:40px
}

#post_title .category {
    font-size: 12px;
    color: #fff;
    border-radius: 30px;
    text-align: center;
    margin: 0 0 15px;
    display: inline-block;
    min-width: 100px;
    height: 30px;
    line-height: 30px;
    padding: 0 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#post_title .title {
    font-size: 24px;
    line-height:1.5
}

#post_title .date {
    font-size: 14px;
    position: relative;
    color:#999
}

#post_title .update {
    font-size: 14px;
    position: relative;
    padding: 0 0 0 32px;
    color: #999;
    margin: 0 0 0 10px;
    border-left:1px solid #ddd
}

#post_title .update:before {
    font-family: 'design_plus';
    content: '\e943';
    font-size: 14px;
    top: 1px;
    left: 10px;
    position: absolute;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

#post_title .meta_top {
    margin: 12px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items:center
}

#post_image {
    width: 100%;
    height: 440px;
    position: relative;
    margin:0 0 40px
}

.post_content a:hover, .custom-html-widget a:hover {
    text-decoration:none
}

#single_share_top {
    margin: 0 0 35px;
    padding:0
}

#single_share_top .share-top {
    margin:0
}

#single_share_bottom {
    margin:40px 0 0
}

#single_share_bottom .share-btm {
    margin-bottom: 0 !important;
    padding:0
}

#single_share_top .mt10, #single_share_top .mt10 {
    margin:0 !important
}

#single_share_bottom .mb45, #single_share_bottom .mb45 {
    margin:0 !important
}

.share-type1 ul {
    text-align:left
}

.share-type3 ul {
    text-align:left
}

.share-type2 ul.type2 {
    text-align:left
}

.share-type4 ul.type4 {
    text-align:left
}

.sns_default_top {
    text-align:left
}

.single_copy_title_url {
    text-align:center
}

.single_copy_title_url_btn {
    font-size: 14px;
    background: #fff;
    border: 3px solid #ccc;
    cursor: pointer;
    line-height: 54px;
    min-width: 300px;
    padding: 0 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition-property: background-color, color;
    -webkit-transition-duration: .3s;
    -webkit-transition-timing-function: ease;
    transition-property: background-color, color;
    transition-duration: .3s;
    transition-timing-function:ease
}

.single_copy_title_url_btn.copied {
    background: #ccc;
    color: #fff;
    pointer-events:none
}

#single_copy_title_url_top {
    margin:0 0 30px
}

#single_copy_title_url_bottom {
    margin:35px 0 0
}

#post_pagination {
    margin: 0;
    padding: 20px 0 0;
    clear: both;
    font-size: 0;
    text-align:center
}

#post_pagination a, #post_pagination p {
    color: #000;
    background: #fff;
    border: 1px solid #ddd;
    font-size: 14px;
    display: inline-block;
    margin: 0 -1px 0 0;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#post_pagination p {
    position: relative;
    background: #000;
    border-color: #000;
    color:#fff
}

#post_pagination a:hover {
    background: #000;
    border-color: #000;
    color:#fff
}

#post_meta_bottom {
    margin: 60px 0 0;
    padding: 15px 30px;
    border: 1px solid #ddd;
    background:#fff
}

#post_meta_bottom li {
    display: inline;
    margin: 0 10px 0 0;
    padding: 0 15px 0 25px;
    border-right: 1px solid #ddd;
    font-size: 12px;
    line-height: 1.8;
    position:relative
}

#post_meta_bottom li:last-child {
    border: none;
    margin:0
}

#post_meta_bottom li:before {
    font-family: 'design_plus';
    color: #666;
    font-size: 15px;
    line-height: 1;
    position: absolute;
    top: 0;
    left:0
}

#post_meta_bottom li.post_author:before {
    content: '\e90d'
}

#post_meta_bottom li.post_category:before {
    content: '\e92f'
}

#post_meta_bottom li.post_tag:before {
    content: '\e935'
}

#post_meta_bottom li.post_comment:before {
    content: '\e916';
    font-size: 20px;
    top: -3px;
    left:-2px
}

.author_profile {
    background: #fff;
    border: 1px solid #ddd;
    margin: 60px 0 0;
    position: relative;
    padding: 35px 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.author_profile .avatar_area {
    display: block;
    width: 120px;
    height: 120px;
    border-radius: 100%;
    position: relative;
    overflow: hidden;
    z-index:1
}

.author_profile img.avatar {
    display: block;
    width: 100%;
    height: auto;
    z-index:2
}

.author_profile .info {
    height: 100%;
    -webkit-width: calc(100% - 120px);
    width: calc(100% - 120px);
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.author_profile .info_inner {
    padding:0 0 0 40px
}

.author_profile .name {
    font-size: 22px;
    margin: 5px 0 10px;
    font-weight:600
}

.author_profile .desc {
    line-height: 2;
    margin: 0;
    font-size:14px
}

body.single #main_col .author_profile .desc {
    max-height: 4em;
    overflow: hidden;
    visibility:visible
}

body.single #main_col .author_profile .desc span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

#author_sns {
    text-align: left;
    margin:10px 0 0 2px
}

#author_sns li {
    margin:0 14px 0 0
}

.author_profile .archive_link {
    float: right;
    padding: 0 20px 0 0;
    margin-top:4px
}

.author_profile .archive_link span:after {
    font-size: 12px;
    font-family: 'design_plus';
    content: '\e910';
    display: block;
    position: absolute;
    right: 0;
    top: 5px;
    height: 14px;
    line-height: 14px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

#related_post {
    margin: 70px 0 -40px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#related_post .design_headline2 {
    font-size: 22px;
    margin:0 -40px 70px 0 !important
}

#related_post .post_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#related_post .item {
    width: calc(100%/3 - 10px);
    margin: 0 15px 40px 0;
    position:relative
}

#related_post .item:nth-of-type(3n) {
    margin-right:0
}

#related_post .image_wrap {
    margin: 0 0 15px;
    display: block;
    width: 100%;
    height: 140px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

#related_post .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

#related_post .title {
    font-weight: 500 !important;
    font-size: 14px;
    line-height: 1.6;
    max-height: 3.2em;
    overflow: hidden;
    visibility: visible;
    word-wrap: break-word;
    word-break:break-all
}

#related_post .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

#related_post .category {
    font-size: 12px;
    text-align: center;
    color: #fff;
    position: absolute;
    z-index: 4;
    left: 0;
    top: 0;
    min-width: 130px;
    height: 40px;
    line-height: 40px;
    padding: 0 20px;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#single_banner_top {
    margin: 0 auto;
    padding:10px 0 35px
}

#single_banner_bottom {
    margin:60px auto -10px
}

#single_banner_shortcode {
    margin: 0 auto;
    padding:15px 0 45px
}

img.single_banner_image {
    max-width: 100%;
    height: auto;
    display: block;
    margin:0 auto
}

#next_prev_post {
    border-top: 1px solid #ddd;
    margin: 40px -40px 0 0;
    position: relative;
    padding-right: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#next_prev_post .item {
    height: 122px;
    width: 50%;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#next_prev_post .item:first-of-type {
    border-right: 1px solid #ddd;
    padding-right:40px
}

#next_prev_post .item:last-of-type {
    padding-left:40px
}

#next_prev_post .item:only-of-type {
    padding-left:0
}

#next_prev_post a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background:0 0
}

#next_prev_post .image_wrap {
    display:none
}

#next_prev_post .title_area {
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

#next_prev_post .title {
    position: relative;
    padding-left: 40px;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.6;
    max-height: 3.2em;
    overflow: hidden;
    visibility: visible;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    word-wrap: break-word;
    word-break:break-all
}

#next_prev_post .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

#next_prev_post .nav {
    display:none
}

#next_prev_post .next_post .title {
    padding:0 40px 0 0
}

#next_prev_post .title:after {
    z-index: 10;
    position: absolute;
    left: -3px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: 'design_plus';
    color: #000;
    font-size: 14px;
    font-weight: 500;
    display: block;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

#next_prev_post .prev_post .title:after {
    content: '\e90f'
}

#next_prev_post .next_post .title:after {
    content: '\e910';
    left: auto;
    right:-4px
}

#header {
    z-index: 1100;
    position: absolute;
    width: 100%;
    height: 80px;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.pc body.use_header_fix #header:after {
    content: '';
    display: block;
    width: 100%;
    height: 80px;
    background: #fff;
    top: -80px;
    left: 0;
    position: absolute;
    z-index: 1;
    -webkit-transition: all .6s cubic-bezier(.22, 1, .36, 1) 0s;
    transition:all .6s cubic-bezier(.22, 1, .36, 1) 0s
}

#header.active:after {
    top:0 !important
}

.pc body.header_fix #header {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-animation: shadow_animation .7s esase forwards .2s;
    animation:shadow_animation .7s ease forwards .2s
}

@-webkit-keyframes shadow_animation {
    0% {
        box-shadow:0 0 0 0 rgba(0, 0, 0, .15)
    }

    100% {
        box-shadow:0 0 10px 0 rgba(0, 0, 0, .15)
    }
}

@keyframes shadow_animation {
    0% {
        box-shadow:0 0 0 0 rgba(0, 0, 0, .15)
    }

    100% {
        box-shadow:0 0 10px 0 rgba(0, 0, 0, .15)
    }
}

.pc body.header_fix #header:after {
    top:0 !important
}

body.single #header {
    position:relative
}

body.single #header:before {
    content: '';
    width: 100%;
    height: 1px;
    background: #ddd;
    position: absolute;
    bottom: 0;
    left:0
}

body.single #header.active:after {
    display:none
}

body.single.header_fix #header.active:after {
    display:block
}

.pc body.single.header_fix {
    padding-top:80px
}

.pc body.single.header_fix #header:before {
    display:none
}

body.hide_global_menu #header:after {
    display:none !important
}

body.hide_global_menu #header {
    position:absolute !important
}

body.hide_header_image #header {
    border-bottom: 1px solid #ddd;
    position:relative
}

body.hide_header_image #header.active:after, body.no_index_header_content #header.active:after {
    display:none
}

body.hide_header_logo.hide_global_menu.hide_header_image #header {
    display:none
}

.pc body.hide_header_image.header_fix {
    padding-top:80px
}

.pc body.hide_header_image.header_fix #header {
    border:none
}

.pc body.hide_header_image.header_fix #header.active:after, .pc body.no_index_header_content.header_fix #header.active:after {
    display:block
}

.pc body.hide_header_logo.hide_global_menu.hide_header_image.hide_header_image.header_fix {
    padding-top:0
}

body.hide_header_logo #header_logo {
    display:none
}

#header_logo a {
    z-index: 10;
    position: absolute;
    left: 0;
    height: 80px;
    line-height: 80px;
    padding: 0 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items:center
}

#header_logo .logo {
    font-weight:500
}

#header_logo img {
    display: block;
    -webkit-transition: opacity .3s ease-in-out;
    transition:opacity .3s ease-in-out
}

#header_logo a:hover img {
    opacity:.5
}

#header_logo a .logo_text {
    -webkit-transition: opacity .3s ease-in-out;
    transition:opacity .3s ease-in-out
}

#header_logo a:hover .logo_text {
    opacity:.5
}

#header_logo .logo_image.mobile {
    display:none
}

body.hide_global_menu #global_menu {
    display:none
}

#global_menu {
    width: 100%;
    height: 80px;
    z-index: 2;
    position:relative
}

#global_menu > ul {
    position: relative;
    text-align: center;
    font-size:0;
	margin-left: 90px
}

#global_menu > ul > li {
    display: inline-block;
    n: relative;
    line-height: 1;
    text-align: center;
    font-size:14px
}

#global_menu > ul > li > a {
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    height: 80px;
    line-height: 80px;
    padding: 0 20px;
    display: block;
    position: relative;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#global_menu ul ul {
    display: none;
    width: 230px;
    position: absolute;
    top: 80px;
    margin: 0;
    padding: 0;
    z-index:100
}

#global_menu ul ul ul {
    left: 100%;
    top: 0 !important;
    margin:0
}

#global_menu ul ul li {
    line-height: 1.5;
    font-size: 14px;
    padding: 0;
    margin: 0;
    text-align: left;
    position: relative;
    display:block
}

#global_menu ul ul a {
    background: #000;
    color: #fff;
    display: block;
    position: relative;
    padding: 14px 20px 12px;
    height: auto;
    line-height: 1.6;
    margin:0
}

#global_menu ul ul a:hover {
    text-decoration: none;
    background:#444
}

#global_menu > ul > li.current-menu-item > a {
    color:#fff
}

#global_menu > ul > li.current-menu-item > a:before {
    top:0
}

#global_menu ul ul li.menu-item-has-children > a:before {
    font-family: 'design_plus';
    content: '\e910';
    color: #fff;
    display: block;
    position: absolute;
    right: 9px;
    top: 19px;
    font-size: 10px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

#header.active #global_menu > ul > li > a, body.header_fix #global_menu > ul > li > a, body.single #global_menu > ul > li > a {
    color:#000
}

body.hide_header_image #global_menu > ul > li > a, body.no_index_header_content #global_menu > ul > li > a {
    color:#000
}

#global_menu_button {
    display:none
}

#drawer_menu {
    display:none
}

#header_message {
    padding: 10px 0;
    position: relative;
    z-index:2000
}

#header_message.type1 .post_content {
    width: 850px;
    margin:0 auto
}

#header_message.type2 .post_content {
    width: auto;
    margin:0 20px
}

#header_message.type2.show_close_button .post_content {
    margin:0 40px
}

#close_header_message {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    background:rgba(0, 0, 0, .1)
}

#close_header_message:before {
    content: '\e91a';
    font-family: design_plus;
    font-size:14px
}

#close_header_message:hover {
    background:rgba(0, 0, 0, .2)
}

html.open_menu #header_message {
    display:none
}

body.hide_global_menu #header_search {
    display:none
}

#header_search {
    position: absolute;
    right: 0;
    top: 0;
    width: 80px;
    height: 80px;
    z-index:100
}

#header_search_button {
    display: block;
    position: relative;
    width: 80px;
    height: 80px;
    cursor: pointer;
    z-index: 2;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#header_search_button:before {
    display: block;
    font-family: 'design_plus';
    color: #fff;
    font-size: 18px;
    content: '\e915';
    top: 33px;
    left: 32px;
    position: absolute;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

#header.active #header_search_button:before, body.header_fix #header_search_button:before, body.single #header_search_button:before {
    color:#000
}

#header_search_button:hover:before {
    opacity:.5
}

#header_search form {
    opacity: 0;
    pointer-events: none;
    height: 40px;
    width: 240px;
    position: absolute;
    top: 20px;
    right: 30px;
    z-index: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s ease;
    transition:all .3s ease
}

#header_search.active form {
    opacity: 1;
    pointer-events:initial
}

#header_search .input_area input {
    position: absolute;
    right: 30px;
    width: 0;
    height: 40px;
    border: 1px solid #ddd;
    background: 0 0;
    background: #f5f5f5;
    z-index: 1;
    padding: 0 15px;
    border-radius: 50px;
    -webkit-transition: all .3s ease;
    transition:all .3s ease
}

#header_search.active form .input_area input {
    width:240px
}

#header_search .button {
    display:none
}

body.hide_header_image #header_search_button:before, body.no_index_header_content #header_search_button:before {
    color:#000
}

.pc .megamenu_button + ul {
    display:none !important
}

.megamenu {
    opacity: 0;
    background: #fff;
    pointer-events: none;
    width: 100%;
    height: auto;
    position: absolute;
    top: 80px;
    z-index: 500;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transition: all .3s cubic-bezier(.22, 1, .36, 1) 0s;
    transition: all .3s cubic-bezier(.22, 1, .36, 1) 0s;
    box-shadow:0 5px 5px 0 rgba(0, 0, 0, .07)
}

.megamenu.active_mega_menu {
    opacity: 1;
    pointer-events: initial;
    top:80px
}

.megamenu_inner {
    width: 1150px;
    height: auto;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.megamenu .headline_area {
    width: 220px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.megamenu .headline_area h3 {
    line-height: 1.5;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

.megamenu .headline_area h3 span {
    display:block
}

.megamenu .headline_area h3 .headline {
    font-size: 28px;
    color: #006ea5;
    margin:5px 0 0
}

.megamenu .headline_area h3 .sub_headline {
    font-weight: 500;
    color:#000
}

.megamenu .headline_area h3 a {
    display: block;
    padding: 0 50px 0 0;
    position:relative
}

.megamenu .headline_area h3 a:before {
    font-family: 'Font Awesome 6 Free';
    content: '\f054';
    color: #000;
    font-size: 18px;
    display: block;
    height: 18px;
    line-height: 18px;
    text-align: center;
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

.megamenu .headline_area h3 a:hover:before {
    color:#ccc
}

.megamenu_a .slider_area {
    width: calc(100% - 220px);
    height: 314px;
    position: relative;
    margin-top: 40px;
    z-index: 1;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.megamenu_a .slider_area.no_category {
    height: 263px;
    margin-top:66px
}

.megamenu_a .slider_area:before {
    content: '';
    width: 1px;
    height: 100%;
    background: #ddd;
    display: block;
    position: absolute;
    top: 0;
    left: 42px;
    z-index:1
}

.megamenu_a .slider_area:after {
    content: '';
    width: 1px;
    height: 100%;
    background: #ddd;
    display: block;
    position: absolute;
    top: 0;
    right: 42px;
    z-index:1
}

.megamenu_a .slider {
    width: 846px;
    margin-left: 42px;
    z-index: 2;
    position:relative
}

.megamenu_a .item {
    position: relative;
    border-left: 1px solid #ddd;
    height:314px
}

.megamenu_a .image_wrap {
    display: block;
    margin: 0 -1px;
    width: calc(100% + 2px);
    height: 160px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

.megamenu_a .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

.megamenu_a .title_area {
    padding:20px 30px
}

.megamenu_a .title {
    line-height: 1.5;
    max-height: 4.5em;
    word-break: break-all;
    overflow:hidden
}

.megamenu_a .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3
}

.megamenu_a .category {
    font-size: 12px;
    text-align: center;
    color: #fff;
    border-radius: 30px;
    margin: 0 0 20px 30px;
    min-width: 90px;
    height: 30px;
    line-height: 30px;
    padding: 0 20px;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.megamenu_b .megamenu_inner {
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content:space-between
}

.megamenu_b .service_list_area {
    width: 920px;
    height: 390px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.megamenu_b .service_item_list {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.megamenu_b .service_item_list .item {
    height: 100%;
    border-right: 1px solid rgba(255, 255, 255, .3);
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.megamenu_b .service_item_list .item:last-of-type {
    border-right:none
}

.megamenu_b .service_item_list a {
    color: #fff !important;
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.megamenu_b .service_item_list .item a:after {
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 1;
    opacity: 0;
    -webkit-transition: opacity .2s ease;
    transition:opacity .2s ease
}

.megamenu_b .service_item_list .item.active a:after {
    opacity:1
}

.megamenu_b .service_item_list .content {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 0 30px 30px;
    z-index:2
}

.megamenu_b .service_item_list .title {
    font-size: 20px;
    line-height: 1.2;
    font-weight: 600;
    word-break: break-all;
    -webkit-transition: all .7s cubic-bezier(.22, 1, .36, 1);
    transition:all .7s cubic-bezier(.22, 1, .36, 1)
}

.megamenu_b .service_item_list .item.active .title {
    margin-bottom:20px
}

.megamenu_b .service_item_list .sub_title {
    font-size: 14px;
    font-weight: 600;
    margin: 12px 0 0;
    line-height: 1;
    position: relative;
    display: inline-block;
    padding:0 20px 0 0
}

.megamenu_b .service_item_list .sub_title:after {
    opacity: 0;
    font-family: 'Font Awesome 6 Free';
    content: '\f054';
    font-size: 14px;
    display: block;
    position: absolute;
    top: 2px;
    right: 0;
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all .4s ease;
    transition:all .4s ease
}

.megamenu_b .service_item_list .item.active .sub_title:after {
    opacity:1
}

.megamenu_b .service_image_list .image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transform: scale(1.1);
    transform:scale(1.1)
}

.megamenu_b .service_image_list .image.active {
    opacity: 1;
    -webkit-transform: scale(1);
    transform:scale(1)
}

.megamenu_b .service_image_list .image .overlay {
    width: 100%;
    height:100%
}

.megamenu_c .company_list_area {
    width: calc(100% - 220px);
    height: auto;
    position: relative;
    margin: 40px 0 38px;
    z-index: 1;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.megamenu_c .company_list_area .item {
    width: calc(100%/3 - 2px);
    margin: 0 3px 3px 0;
    height:153px
}

.megamenu_c .company_list_area .item:nth-child(3n) {
    margin-right:0
}

.megamenu_c .company_list_area a {
    display: block;
    width: 100%;
    height: 100%;
    position:relative
}

.megamenu_c .company_list_area .image_wrap {
    display: block;
    width: 100%;
    height: 153px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

.megamenu_c .company_list_area .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

.megamenu_c .company_list_area .title {
    font-weight: 600;
    line-height: 1.5;
    color: #fff;
    padding: 0 30px;
    position: absolute;
    z-index: 3;
    left: 138px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all .35s ease;
    transition: all .35s ease
}

.megamenu_c .company_list_area a:hover .title {
    left:15px
}

.megamenu_c .company_list_area .title span {
    display:block
}

.megamenu_c .company_list_area .title .main_title {
    font-size:20px
}

.megamenu_c .company_list_area .title .sub_title {
    font-size: 14px;
    font-weight:500
}

.megamenu_c .company_list_area a:after {
    content: '';
    display: block;
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: -moz-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%);
    background:linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%)
}

#return_top2 a {
    border-top: 1px solid #ddd;
    display: block;
    height: 60px;
    line-height: 60px;
    text-decoration: none;
    position:relative
}

#return_top2 span {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display:block
}

#return_top2 a:before {
    color: #000 !important;
    font-family: 'Font Awesome 6 Free';
    content: '\f077';
	font-weight: 900;
    font-size: 18px;
    display: block;
    width: 18px;
    height: 18px;
    position: absolute;
    left: 0;
    right: 0;
    top: 2px;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

#return_top2 a:hover {
    background:#fafafa
}

#return_top {
    display:none !important
}

#return_top a {
    background: #000;
    display: block;
    height: 60px;
    width: 60px;
    line-height: 60px;
    text-decoration: none;
    z-index: 100;
    position:relative
}

#return_top a:hover {
    color:#fff !important
}

#return_top span {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display:block
}

#return_top a:before {
    color: #fff;
    font-family: 'design_plus';
    content: '\e911';
    font-size: 12px;
    display: block;
    width: 12px;
    height: 12px;
    position: absolute;
    left: 0;
    right: 0;
    top: 4px;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

#return_top {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 999;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    -webkit-transition: -webkit-transform .35s;
    transition:all .35s
}

#return_top.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0)
}

#footer_top {
    border-top: 1px solid #ddd;
    position: relative;
    padding:70px 0
}

#footer_logo .logo {
    line-height: 1;
    margin: 0;
    padding: 0;
    font-weight: 500;
    display:block
}

#footer_logo img {
    height: auto;
    display: block;
    margin: auto;
    -webkit-transition: opacity .35s ease-in-out;
    transition:opacity .35s ease-in-out
}

#footer_logo img:hover {
    opacity:.5
}

#footer_logo .logo_image.mobile {
    display:none
}

#footer_logo .logo_text {
    -webkit-transition: color .35s ease;
    transition: color .35s ease;
    text-align: center;
    width: 100%;
    display:block
}

#footer_sns {
    margin-top:30px
}

.sns_button_list {
    font-size: 0;
    z-index: 20;
    text-align:center
}

.sns_button_list li {
    display: inline-block;
    margin: 0 25px;
    position:relative
}

.sns_button_list li a {
    display: block;
    width: 16px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    position:relative
}

.sns_button_list li a span {
    display:none
}

.sns_button_list li a:before {
    font-family: 'Font Awesome 6 Free';
	font-weight: 900;
    font-size: 15px;
    display: block;
    position: absolute;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

.sns_button_list li.twitter a:before {
    content: '\e61b'
}

.sns_button_list li.facebook a:before {
    content: '\f09a';
    font-size: 18px;
    top: -.5px;
    left:-1px
}

.sns_button_list li.insta a {
    width:15px
}

.sns_button_list li.insta a:before {
    content: '\f16d'
}

.sns_button_list li.pinterest a:before {
    content: '\e905';
    font-size: 17px;
    left:-.5px
}

.sns_button_list li.youtube a {
    width:18px
}

.sns_button_list li.youtube a:before {
    content: '\ea9d';
    font-size:17px
}

.sns_button_list li.contact a {
    width:15px
}

.sns_button_list li.contact a:before {
    content: '\f0e0';
    font-size: 15px;
    top:-1px
}

.sns_button_list li.rss a {
    width:14px
}

.sns_button_list li.rss a:before {
    content: '\e90b';
    font-size: 14px;
    top:0
}

.sns_button_list li.user_url a:before {
    content: '\e942';
    font-size:15px
}

.sns_button_list.color_type2 li {
    margin:0 10px
}

.sns_button_list.color_type2 li a {
    width: 22px;
    height: 22px;
    line-height:22px
}

.sns_button_list.color_type2 li a:before {
    font-size:22px
}

.sns_button_list.color_type2 li.twitter a:before {
    color: #1da1f2;
    top:0
}

.sns_button_list.color_type2 li.facebook a:before {
    color: #1877f2;
    font-size: 26px;
    left: -2px;
    top:1px
}

.sns_button_list.color_type2 li.insta a:before {
    color: #e4405f;
    top:1px
}

.sns_button_list.color_type2 li.pinterest a:before {
    color: #bd081c;
    font-size: 24px;
    left: -1px;
    top:1px
}

.sns_button_list.color_type2 li.youtube a:before {
    color: red;
    top:1px
}

.sns_button_list.color_type2 li.contact a:before {
    color: #00729f;
    top:0
}

.sns_button_list.color_type2 li.rss a:before {
    color: orange;
    top:1px
}

.sns_button_list.color_type2 li.user_url a:before {
    color:#00729f
}

.sns_button_list.color_type2 li a:before {
    -webkit-transition: opacity .4s ease;
    transition:opacity .4s ease
}

.sns_button_list.color_type2 li a:hover:before {
    opacity:.5
}

#footer_menu {
    width: 1150px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#footer_menu .footer_menu {
    border-left: 1px solid #ddd;
    padding: 0 40px 50px;
    ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#footer_menu .footer_menu:last-of-type {
    border-right:1px solid #ddd
}

#footer_menu .footer_menu li {
    margin: 0 0 13px;
    line-height: 1.5;
    font-size:14px
}

#footer_menu .footer_menu li:first-of-type {
    font-size: 16px;
    font-weight: 600;
    margin:0 0 20px
}

#footer_menu .footer_menu li:first-of-type a {
    color:#0071a2
}

#footer_menu .footer_menu a {
    display:block
}

#footer_banner {
    margin-bottom: -1px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#footer_banner .item {
    ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    height:200px
}

#footer_banner a {
    display: block;
    position: relative;
    width: 100%;
    height:100%
}

#footer_banner .image_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    overflow:hidden
}

#footer_banner .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

#footer_banner .title_area {
    z-index: 5;
    position: absolute;
    left: 0;
    padding: 0 20px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .35s ease;
    transition:all .35s ease
}

#footer_banner .title {
    font-size: 24px;
    font-weight:600
}

#footer_banner .sub_title {
    font-size: 14px;
    font-weight: 500;
    margin-top:13px
}

#footer_banner .overlay {
    position: absolute;
    width: 70%;
    height: 100%;
    z-index: 4;
    left: -1px;
}

#footer_banner a:hover .title_area {
    left:7px
}

#footer_menu_bottom {
    height: 70px;
    line-height: 70px;
    border-top: 1px solid #ddd;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#footer_menu_bottom ul {
    font-size: 0;
    z-index: 20;
    text-align:center
}

#footer_menu_bottom li {
    font-size: 14px;
    display: inline-block;
    margin: 0 20px;
    position:relative
}

#copyright {
    line-height: 60px;
    height: 60px;
    font-size: 12px;
    text-align: center;
    border-top: 1px solid #ddd;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#footer_message {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 600;
    text-align: center;
    width: 100%;
    padding: 0 50px;
    z-index: 1;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#dp-footer-bar {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 999;
    width:100%
}

.open_menu #dp-footer-bar {
    display:none
}

.dp-footer-bar-type1 #dp-footer-bar {
    opacity: 0;
    -webkit-transition: opacity .35s, -webkit-transform .35s;
    transition: opacity .35s, transform .35s;
    pointer-events:none
}

.dp-footer-bar-type1 #dp-footer-bar.active {
    opacity: 1;
    pointer-events:visible
}

.dp-footer-bar-type2 #dp-footer-bar {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    -webkit-transition: -webkit-transform .35s;
    transition:transform .35s
}

.dp-footer-bar-type2 #dp-footer-bar.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0)
}

#dp-footer-bar {
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#dp-footer-bar a {
    height: 50px;
    line-height: 50px;
    display: block;
    text-align: center;
    font-size: 12px;
    padding: 0 20px;
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex:1 1 0%
}

.widget_content {
    border-bottom: 1px solid #ddd;
    padding:40px 0 40px 40px
}

.widget_content ul {
    margin:0
}

.widget_content li ul {
    margin:10px 0 0
}

.widget_content li {
    line-height: 2;
    padding: 2px 0;
    margin:0 0 10px
}

.widget_content a {
    text-decoration:none
}

.widget_content img {
    height: auto;
    max-width:100%
}

.widget_headline {
    color: #00729f;
    font-weight: 600;
    font-size: 18px;
    padding: 0;
    margin: 0 0 20px;
    line-height:1
}

.tcd_ad_widget img {
    height: auto;
    max-width: 100%;
    margin: 0 auto;
    display:block
}

#calendar_wrap {
    padding:0
}

#wp-calendar {
    margin: 0 auto;
    width: 100%;
    font-size: 11px;
    border-collapse: collapse;
    table-layout:fixed
}

#wp-calendar th, #wp-calendar td {
    padding: 10px;
    line-height: 2;
    text-align: center;
    border:1px solid #ddd
}

#wp-calendar td a {
    display: block;
    margin: 0;
    padding: 0;
    text-decoration: none;
    background-color:#eee
}

#wp-calendar td a:hover {
    text-decoration: none;
    color: #fff;
    background:#aaa
}

#wp-calendar caption {
    padding:7px 0
}

#wp-calendar thead th, #wp-calendar tfoot td {
    border:none
}

.wp-calendar-nav {
    font-size: 12px;
    padding:10px
}

.styled_post_list1_widget {
    padding:0
}

.styled_post_list1_widget .widget_headline {
    background: #00729f;
    color: #fff;
    padding: 0 40px;
    height: 70px;
    line-height: 70px;
    margin:0
}

.styled_post_list1 li {
    margin: 0;
    padding: 0;
    position: relative;
    border-bottom:1px solid #ddd
}

.styled_post_list1 li:last-child {
    border-bottom:none
}

.styled_post_list1 a {
    width: 100%;
    position: relative;
    padding: 35px 0 38px 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.styled_post_list1 .image_wrap {
    display: block;
    width: 110px;
    height: 110px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

.styled_post_list1 .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

.styled_post_list1 .title_area {
    width: calc(100% - 110px);
    height: 110px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.styled_post_list1 .title_area_inner {
    position: absolute;
    padding: 0 0 0 18px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

.styled_post_list1 .title {
    font-size: 14px;
    line-height: 1.8;
    max-height: 5.4em;
    font-weight: 500;
    word-break: break-all;
    overflow: hidden;
    -webkit-transition-property: color;
    -webkit-transition-duration: .2s;
    -webkit-transition-timing-function: ease;
    transition-property: color;
    transition-duration: .2s;
    transition-timing-function: ease;
    word-wrap: break-word;
    word-break:break-all
}

.styled_post_list1 .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3
}

.styled_post_list1 .date {
    font-size: 12px;
    color: #999;
    line-height: 1;
    margin-top: 5px;
    -webkit-transition-property: color;
    -webkit-transition-duration: .2s;
    -webkit-transition-timing-function: ease;
    transition-property: color;
    transition-duration: .2s;
    transition-timing-function:ease
}

.styled_post_list1 .no_image .title_area {
    width: 100%;
    height:auto
}

.styled_post_list1 .no_image .title_area_inner {
    position: relative;
    padding: 0;
    top: 0;
    -ms-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    transform:translateY(0%)
}

.styled_post_list1 .no_image .title {
    max-height:3.6em
}

.styled_post_list1 .no_image .title span {
    -webkit-line-clamp:2
}

.post_slider_widget {
    position:relative
}

.post_slider_widget .post_slider {
    height: 174px;
    position:relative
}

.post_slider_widget .item {
    width: 100%;
    height: 174px;
    position:relative
}

.post_slider_widget .item .link {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    background:#fff
}

.post_slider_widget .item .link:after {
    content: '';
    display: block;
    width: 100%;
    height: 70%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .5) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .5) 100%);
    background:linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .5) 100%)
}

.post_slider_widget .image_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    overflow:hidden
}

.post_slider_widget .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

.post_slider_widget .title_area {
    padding: 0 30px;
    position: absolute;
    bottom: 20px;
    left: 0;
    z-index:3
}

.post_slider_widget .title {
    color: #fff;
    line-height: 1.5;
    font-size: 16px;
    overflow: hidden;
    max-height: 3em;
    font-weight: 600;
    word-wrap: break-word;
    word-break:break-all
}

.post_slider_widget .title span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:2
}

.post_slider_nav {
    position: absolute;
    bottom: 0;
    margin-left: 20px;
    height: 40px;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform:translateX(-50%)
}

.post_slider_nav .carousel_arrow {
    height: 40px;
    width: 35px;
    line-height:40px
}

.post_slider_nav .carousel_arrow:before {
    height: 40px;
    line-height: 40px;
    font-size: 14px;
    top: 2px;
    position:relative
}

.post_slider_nav .carousel_arrow.prev_item {
    left:-35px
}

.post_slider_nav .carousel_arrow.next_item {
    right:-35px
}

.tab_post_list_widget {
    position:relative
}

.widget_tab_post_list_button {
    position: relative;
    z-index:10
}

.widget_tab_post_list_button div {
    height: 60px;
    line-height: 60px;
    width: 50%;
    float: left;
    text-align: center;
    cursor: pointer;
    display: block;
    background: #f5f5f5;
    position: relative;
    border: 1px solid #ddd;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.widget_tab_post_list_button div:first-of-type {
    border-right:none
}

.widget_tab_post_list_button div.active {
    background: #fff;
    pointer-events: none;
    border-bottom:1px solid #fff
}

.widget_tab_post_list {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100px;
    left: 40px;
    width: calc(100% - 40px);
    border: 1px solid #ddd;
    border-top: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: opacity .5s ease;
    transition:opacity .5s ease
}

.widget_tab_post_list.active {
    opacity: 1;
    pointer-events: initial;
    position: relative;
    top: 0;
    left: 0;
    width:auto
}

.widget_tab_post_list li {
    margin: 0;
    padding: 18px;
    border-bottom:1px solid #ddd
}

.widget_tab_post_list li:last-child {
    margin: 0;
    border:none
}

.widget_tab_post_list a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.widget_tab_post_list .image_wrap {
    display: block;
    width: 110px;
    height: 110px;
    position: relative;
    z-index: 1;
    overflow:hidden
}

.widget_tab_post_list .image {
    width: 100%;
    height: 100% !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

.widget_tab_post_list .title_area {
    width: calc(100% - 110px);
    position:relative
}

.widget_tab_post_list .title {
    font-size: 14px;
    line-height: 1.8;
    max-height: 5.4em;
    word-break: break-all;
    overflow: hidden;
    padding: 0 0 0 18px;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform:translateY(-50%)
}

.widget_tab_post_list .title span {
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3
}

.tcd_banner_widget .headline {
    margin-bottom:10px
}

.tcd_banner_widget .sub_headline {
    margin-bottom: 15px;
    font-size:14px
}

.tcd_banner_widget a {
    display: block;
    margin: 0 auto 15px;
    width: 100%;
    height: 120px;
    position: relative;
    background:#fff
}

.tcd_banner_widget a:last-child {
    margin-bottom:0
}

.tcd_banner_widget .image_wrap {
    display: block;
    width: 100%;
    height: 120px;
    position: absolute;
    z-index: 1;
    overflow: hidden;
    left: 0;
    top: 1px
}

.tcd_banner_widget .image {
    width: 100%;
    height: 120px !important;
    display: block;
    overflow: hidden;
    position: relative;
    z-index:2
}

.tcd_banner_widget .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 60%;
    height: 100%;
    z-index:3
}

.tcd_banner_widget .title_area {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    padding: 0 30px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .35s ease;
    transition:all .35s ease
}

.tcd_banner_widget .title {
    font-size: 20px;
    line-height:1.5
}

.tcd_banner_widget a:hover .title_area {
    left:5px
}

.tcdw_archive_list_widget .side_headline {
    display:none
}

.p-widget-dropdown {
    height: 45px;
    line-height: 45px;
    position:relative
}

.p-widget-dropdown:after {
    color: #666;
    content: "\e90e";
    font-family: "design_plus";
    position: absolute;
    top: 0;
    right: 17px;
    z-index:1
}

.p-widget-dropdown select {
    padding-right: 33px;
    position: relative;
    z-index: 2;
    -webkit-appearance: none;
    appearance:none
}

.p-widget-dropdown select::-ms-expand {
    display:none
}

.p-dropdown {
    font-size:14px
}

.p-dropdown__title {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    height: 60px;
    line-height: 60px;
    padding: 0 18px;
    border: 1px solid #ddd;
    background: #fff;
    color: #000;
    z-index:10
}

.p-dropdown__title:after {
    position: absolute;
    right: 17px;
    top: 2px;
    font-family: "design_plus";
    content: "\e90e";
    color:#000
}

.p-dropdown__title:hover {
    cursor:pointer
}

.p-dropdown__title.is-active:after {
    content: "\e911"
}

.p-dropdown__list {
    display: none;
    top: -1px;
    position:relative
}

.p-dropdown__list li {
    line-height: 1.5;
    margin: 0;
    padding: 0;
    position:relative
}

.p-dropdown__list li ul {
    margin: 0;
    position: relative;
    display:none
}

.p-dropdown__list li a {
    display: block;
    padding: 0 18px;
    height: 47px;
    line-height: 47px;
    margin: -1px 0 0;
    background: #fff;
    border:1px solid #ddd
}

.p-dropdown__list li li a {
    padding-left:32px
}

.p-dropdown__list li li li a {
    padding-left:46px
}

.p-dropdown__list li li li li a {
    padding-left:60px
}

.p-dropdown__list .child_menu_button {
    width: 50px;
    height: 50px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    cursor:pointer
}

.p-dropdown__list .child_menu_button:before {
    font-family: 'design_plus';
    content: '\e90e';
    text-align: center;
    display: block;
    font-size: 14px;
    width: 14px;
    height: 14px;
    line-height: 14px;
    position: absolute;
    right: 18px;
    top:20px
}

.p-dropdown__list li.active > .child_menu_button:before {
    content: '\e911'
}

.p-dropdown__list .child_menu_button:hover {
    color:#ccc
}

.category_list_widget {
    border-bottom: none;
    padding: 0;
    margin-top:-1px
}

.category_list_widget .square_headline {
    height: 160px;
    padding-left: 40px;
    color: #fff;
    position: relative;
    z-index:1
}

.category_list_widget .square_headline h3 {
    line-height: 1.5;
    position: absolute;
    top: 81px;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 45px;
}

.category_list_widget .square_headline h3 span {
    display:block
}

.category_list_widget .square_headline h3 .sub_headline {
    font-weight:500
}

.category_list_widget ul {
    margin: 0;
    padding: 0;
    border:none
}

.category_list_widget ul ul {
    margin: 0;
    padding: 0;
    border:none
}

.category_list_widget li {
    font-size: 16px;
    margin: 0;
    padding: 0;
    position:relative
}

.category_list_widget li a {
    display: block;
    background: #fff;
    border-bottom: 1px solid #ddd;
    padding: 0 40px;
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 70px;
    line-height: 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-transition: all .35s ease;
    transition:all .35s ease
}

.category_list_widget li li a {
    padding-left:54px
}

.category_list_widget li li li a {
    padding-left:68px
}

.category_list_widget li a:hover {
    padding-left:50px
}

.category_list_widget li li a:hover {
    padding-left:64px
}

.category_list_widget li li li a:hover {
    padding-left:78px
}

.category_list_widget li .title {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -ms-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex:1 0 auto
}

.category_list_widget li.current-menu-item, .category_list_widget li.current-menu-parent {
    background: #fff;
    margin-bottom: -1px;
    z-index: 10;
    position:relative
}

.category_list_widget li.current-menu-item a, .category_list_widget li.current-menu-parent a {
    color: #fff;
    border: none;
    pointer-events:none
}

.widget_search label {
    display:none
}

#searchform {
    border: 1px solid #ddd;
    background: #fff;
    height: 60px;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#searchform #s {
    border: none;
    background: 0 0;
    padding: 0 18px;
    margin: 0;
    width: calc(100% - 50px);
    height: 60px;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#searchform #searchsubmit {
    border: none;
    background: 0 0;
    width: 50px;
    height: 60px;
    z-index: 200;
    position: relative;
    cursor: pointer;
    display: block;
    text-indent: -300px;
    overflow:hidden
}

#searchform .submit_button {
    position: relative;
    width: 50px;
    height: 60px;
    float: right;
    top:1px
}

#searchform .submit_button:before {
    text-indent: 0;
    display: block;
    width: 50px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    cursor: pointer;
    z-index: 1;
    position: absolute;
    font-family: 'design_plus';
    color: #333;
    font-size: 18px;
    content: '\e915';
    right: 0;
    top:0
}

#searchform .submit_button:hover:before {
    color:#aaa
}

.widget_recent_entries li {
    border-bottom: 1px dotted #ccc;
    padding:0 0 15px
}

.widget_recent_entries li:last-child {
    border: none;
    padding:0
}

#page_404_header {
    width: 100%;
    height: 100vh;
    position:relative
}

#page_404_header .content {
    position: absolute;
    z-index: 3;
    text-align: center;
    width: 100%;
    padding: 0 50px;
    color: #fff;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#page_404_header .catch {
    line-height: 1.4;
    font-weight:500
}

#page_404_header .desc {
    line-height: 2;
    margin:15px 0 0
}

#page_404_header .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index:2
}

#page_404_header .bg_image {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index:1
}

#page_404_header .catch, #page_404_header .desc {
    opacity:0
}

#page_404_header.animate .catch {
    -webkit-animation: opacityAnimation 1s ease forwards .5s;
    animation:opacityAnimation 1s ease forwards .5s
}

#page_404_header.animate .desc {
    -webkit-animation: opacityAnimation 1s ease forwards 1s;
    animation:opacityAnimation 1s ease forwards 1s
}

#page_404_button {
    opacity: 0;
    display: block;
    height: 60px;
    width: 60px;
    line-height: 60px;
    text-decoration: none;
    z-index: 3;
    position: absolute;
    bottom: 10px;
    right: 0;
    left: 0;
    margin:auto
}

#page_404_button:before {
    color: #fff;
    font-family: 'design_plus';
    content: '\e90e';
    font-size: 31px;
    display: block;
    position: absolute;
    left: 14px;
    bottom: 0;
    margin: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-animation: slideUpDown 1.2s ease infinite 0s;
    animation:slideUpDown 1.2s ease infinite 0s
}

#page_404_header.animate #page_404_button {
    -webkit-animation: opacityAnimation 1s ease forwards 1.5s;
    animation:opacityAnimation 1s ease forwards 1.5s
}

@-webkit-keyframes slideUpDown {
    0% {
        bottom:10px
    }

    50% {
        bottom:0
    }

    100% {
        bottom:10px
    }
}

@keyframes slideUpDown {
    0% {
        bottom:10px
    }

    50% {
        bottom:0
    }

    100% {
        bottom:10px
    }
}

#comments {
    margin:70px 0 0
}

#comments .design_headline2 {
    font-size: 22px;
    margin:0 -40px 65px 0 !important
}

#comment_header {
    position: relative;
    margin:0 0 20px
}

#comment_tab {
    margin:0
}

#comment_tab li {
    float: left;
    text-align: center;
    margin: 0;
    width:50%
}

#comment_tab li a, #comment_tab li p {
    font-size: 12px;
    padding: 15px;
    line-height: 1.6;
    display: block;
    text-decoration: none;
    background: #f2f2f2;
    color:#000
}

#comment_tab li a:hover {
    color: #fff;
    background:#999
}

#comment_tab li.active a {
    background:#000
}

#comment_tab li.active a, #comment_header #comment_closed p {
    color: #fff;
    position:relative
}

#comment_tab li.active a {
    pointer-events:none
}

.commentlist {
    list-style-type: none;
    margin: 0;
    padding:0
}

.comment {
    margin: 0 0 15px;
    padding: 15px 20px 0;
    background: #fff;
    border:1px solid #ddd
}

#comments .post_content {
    margin: 0;
    padding: 0;
    background: 0 0;
    font-size:14px
}

.comment-meta {
    position: relative;
    margin:0 0 10px
}

.comment-meta-left {
    float: left;
    width:100%
}

#comments .avatar {
    float: left;
    margin: 0 10px 0 0;
    width: 40px;
    height: 40px;
    border-radius:100%
}

.comment-name-date {
    padding: 3px 0 0;
    height:37px
}

a.admin-url {
    text-decoration:underline
}

a.guest-url {
    text-decoration:underline
}

.comment-name-date {
    margin: 0;
    font-size:12px
}

.comment-date {
    color: #888;
    margin:10px 0 0
}

.comment-act {
    font-size: 12px;
    position: absolute;
    right: 0;
    padding: 0;
    margin:5px 0 0
}

.comment-act li {
    display: inline;
    margin:0
}

.comment-reply a, .comment-reply a:visited {
    border-right: 1px solid #aaa;
    padding: 0 10px 0 0;
    margin:0 6px 0 0
}

.comment-edit a, .comment-edit a:visited {
    border-left: 1px solid #aaa;
    padding: 0 0 0 10px;
    margin:0 0 0 6px
}

#comments .post_content p {
    margin:0 0 15px
}

#comments .post_content blockquote span {
    margin: 0 0 -1em;
    display:block
}

.comment-note {
    display: block;
    font-size: 11px;
    margin: 0 0 1em;
    color: #33a8e5;
    border: 1px solid #94ddd4;
    padding: 10px 15px;
    background:#d6f4f0
}

.comment_closed {
    border: 1px solid #ccc;
    text-align: center;
    margin: 0 35px 15px 0;
    padding: 15px;
    background:#fefefe
}

.no_comment {
    padding-bottom:15px
}

.comment_message {
    margin:0 0 25px
}

.commentlist .ping-link {
    margin:0 0 25px
}

.commentlist .ping-meta {
    margin:0 0 15px
}

#trackback_url_area {
    margin:0 0 25px
}

#trackback_url_area label {
    font-size: 11px;
    display: block;
    margin:0 0 5px
}

#trackback_url_area input {
    border: 1px solid #ddd;
    padding: 5px 10px;
    width:100%
}

#comment_pager {
    margin: 0 0 10px;
    height:24px
}

#comment_pager a, #comment_pager span {
    display: inline;
    float: left;
    margin:0 10px 0 0
}

#comment_pager .current {
    text-decoration:underline
}

.comment_form_wrapper {
    margin: 0;
    padding: 15px;
    background: #fff;
    border:1px solid #ddd
}

.comment .comment_form_wrapper {
    margin:0 0 20px
}

#cancel_comment_reply a {
    background: #eee;
    margin: 0 0 1em;
    padding: 10px;
    text-align: center;
    display:block
}

#cancel_comment_reply a:hover {
    background: #222;
    color:#fff
}

#comment_user_login p {
    padding: 5px 0;
    margin: 0;
    line-height: 1;
    font-size:12px
}

#comment_user_login span {
    margin:0 0 0 40px
}

#comment_login {
    margin: 0;
    padding:3px 30px 10px
}

#comment_login p {
    margin: 0;
    padding: 12px 0 11px 36px;
    line-height:1
}

#comment_login a {
    margin: 0 0 0 20px;
    padding:0
}

#guest_info {
    padding: 0;
    width:100%
}

#guest_info div {
    margin: 0 0 12px;
    text-align:left
}

#guest_info input {
    margin: 0;
    padding: 5px 10px;
    border: 1px solid #ccc;
    width: 100%;
    background: #fff;
    box-shadow:1px 1px 5px 0 rgba(0, 0, 0, .1) inset
}

#guest_info input:focus {
    border:1px solid #999
}

#guest_info label {
    display: block;
    margin: 0 0 10px;
    padding: 0;
    font-size:12px
}

#guest_info span {
    margin:0 10px 0 0
}

#comment_textarea textarea {
    margin: 15px 0 0;
    width: 100%;
    height: 150px;
    font-size: 12px;
    overflow: auto;
    padding: 10px;
    background: #fff;
    color: #000;
    border: 1px solid #ccc;
    box-shadow:1px 1px 5px 0 rgba(0, 0, 0, .1) inset
}

#comment_textarea textarea:focus {
    border:1px solid #999
}

#submit_comment_wrapper {
    text-align:center
}

#submit_comment {
    color: #000;
    background: #eee;
    border: none;
    cursor: pointer;
    font-size: 14px;
    width: 200px;
    height: 50px;
    margin: 15px auto 0;
    display: block;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

#submit_comment:hover {
    background: #222;
    color:#fff
}

#input_hidden_field {
    display:none
}

.password_protected {
    text-align: center;
    margin: 0 38px 30px;
    padding: 10px 20px;
    color: #fff;
    background: #3db4b2;
    border-radius:5px
}

.password_protected p {
    font-size: 12px;
    margin: 0;
    line-height:1.6
}

@-webkit-keyframes slideUp {
    0% {
        bottom:-30px
    }

    100% {
        opacity: 1;
        bottom:0
    }
}

@keyframes slideUp {
    0% {
        bottom:-30px
    }

    100% {
        opacity: 1;
        bottom:0
    }
}

@-webkit-keyframes zoomOut {
    0% {
        transform:scale(1)
    }

    100% {
        transform:scale(1.3)
    }
}

@keyframes zoomOut {
    0% {
        transform:scale(1)
    }

    100% {
        transform:scale(1.3)
    }
}

@-webkit-keyframes zoomIn {
    0% {
        transform:scale(1.3)
    }

    100% {
        transform:scale(1)
    }
}

@keyframes zoomIn {
    0% {
        transform:scale(1.3)
    }

    100% {
        transform:scale(1)
    }
}

@-webkit-keyframes opacityAnimation {
    0% {
        opacity:0
    }

    100% {
        opacity:1
    }
}

@keyframes opacityAnimation {
    0% {
        opacity:0
    }

    100% {
        opacity:1
    }
}

@-webkit-keyframes opacityAnimation2 {
    0% {
        opacity:1
    }

    100% {
        opacity:0
    }
}

@keyframes opacityAnimation2 {
    0% {
        opacity:1
    }

    100% {
        opacity:0
    }
}

@-webkit-keyframes moveRight {
    0% {
        opacity: 0;
        right:30px
    }

    100% {
        opacity: 1;
        right:0
    }
}

@keyframes moveRight {
    0% {
        opacity: 0;
        right:30px
    }

    100% {
        opacity: 1;
        right:0
    }
}

@-webkit-keyframes moveLeft {
    0% {
        opacity: 0;
        left:30px
    }

    100% {
        opacity: 1;
        left:0
    }
}

@keyframes moveLeft {
    0% {
        opacity: 0;
        left:30px
    }

    100% {
        opacity: 1;
        left:0
    }
}

@-webkit-keyframes moveDown {
    0% {
        opacity: 0;
        top:-30px
    }

    100% {
        opacity: 1;
        top:0
    }
}

@keyframes moveDown {
    0% {
        opacity: 0;
        top:-30px
    }

    100% {
        opacity: 1;
        top:0
    }
}

@keyframes -webkit-moveUp {
    0% {
        opacity: 0;
        bottom:-30px
    }

    100% {
        opacity: 1;
        bottom:0
    }
}

@keyframes moveUp {
    0% {
        opacity: 0;
        bottom:-30px
    }

    100% {
        opacity: 1;
        bottom:0
    }
}

@keyframes popUp {
    0% {
        transform: scale(.1);
        opacity:0
    }

    100% {
        transform: none;
        opacity:1
    }
}

@keyframes popUp {
    0% {
        transform: scale(.1);
        opacity:0
    }

    100% {
        transform: none;
        opacity:1
    }
}

.post_content .alignright {
    float:right
}

.post_content .alignleft {
    float:left
}

.post_content .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom:7px
}

.post_content blockquote.alignleft, .post_content img.alignleft {
    margin:7px 24px 7px 0
}

.post_content .wp-caption.alignleft {
    margin:7px 14px 7px 0
}

.post_content blockquote.alignright, .post_content img.alignright {
    margin:7px 0 7px 24px
}

.post_content .wp-caption.alignright {
    margin:7px 0 7px 14px
}

.post_content blockquote.aligncenter, .post_content img.aligncenter, .post_content .wp-caption.aligncenter {
    margin-top: 7px;
    margin-bottom:7px
}

.post_content p {
    line-height: 2.4;
    margin:0 0 2em
}

.post_content p:last-child {
    margin:0
}

.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 {
    clear: both;
    line-height: 1.4;
    margin: 0 0 15px;
    padding: 0;
    font-weight:600
}

.post_content h1 {
    font-size:150%
}

.post_content h2 {
    font-size:140%
}

.post_content h3 {
    font-size:130%
}

.post_content h4 {
    font-size:120%
}

.post_content h5 {
    font-size:110%
}

.post_content h6 {
    font-size:100%
}

.post_content img[class * =align], .post_content img[class * =wp-image-], .post_content img[class * =attachment-], .post_content img.size-full, .post_content img.size-large, .post_content .wp-post-image, .post_content img {
    height: auto;
    max-width:100%
}

.post_content li, .post_content dt, .post_content dd {
    line-height:2.2
}

.post_content ul, .post_content ol, .post_content dl {
    margin-bottom:24px
}

.post_content ol {
    list-style: decimal outside none;
    margin-left:1.5em
}

.post_content ul {
    list-style: circle outside none;
    margin-left:1.3em
}

.post_content li > ul, .post_content li > ol {
    margin-bottom:0
}

.post_content dt {
    font-weight:700
}

.post_content dd {
    margin-bottom:1em
}

.post_content table {
    margin: 0 0 24px;
    width:100% !important
}

.post_content td, .post_content th {
    border: 1px solid #ddd;
    padding: 17px 30px;
    line-height: 2.2;

}

.post_content th {
    background: #f7f7f7;
    font-weight:400
}

.post_content table.table_no_border th, .post_content table.table_no_border td {
    border: none;
    padding-left:0
}

.post_content table.table_border_horizontal th, .post_content table.table_border_horizontal td {
    border-left: none;
    border-right: none;
    padding-left:0
}

.post_content blockquote {
    margin: 0 0 25px;
    padding: 27px 30px;
    background: #fff;
    border: 1px solid #ccc;
    box-shadow: 0px 3px 0px 0px rgba(150, 150, 150, .1);
    position:relative
}

.post_content blockquote:before {
    content: '"';font-style:italic;font-size:30px;font-weight:400;line-height:40px;width:30px;height:30px;position:absolute;top:5px;left:10px;color:#5cbcd7}.post_content blockquote:after{content:'"';
    font-style: italic;
    font-size: 30px;
    font-weight: 400;
    text-align: left;
    line-height: 60px;
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 7px;
    right: -2px;
    color:#5cbcd7
}

.post_content blockquote cite {
    border-top: 1px dotted #aaa;
    display: block;
    padding: 20px 0 0;
    font-style: italic;
    text-align: right;
    font-size:90%
}

.post_content .wp-caption {
    margin-bottom: 24px;
    background: #f8f8f8;
    border: 1px solid #ccc;
    padding: 5px;
    max-width: 100%;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.post_content .wp-caption-text {
    text-align: center;
    font-size: 12px;
    font-style: italic;
    line-height: 1.5;
    margin:9px auto
}

.post_content .wp-caption img[class * =wp-image-] {
    display: block;
    margin:0 auto
}

.gallery {
    margin-bottom:20px
}

.gallery a img {
    border:0 !important
}

.gallery-item {
    float: left;
    margin: 0 4px 4px 0;
    overflow: hidden;
    position:relative
}

.gallery-columns-1 .gallery-item {
    max-width:100%
}

.gallery-columns-2 .gallery-item {
    max-width: 48%;
    max-width: -webkit-calc(50% - 4px);
    max-width:calc(50% - 4px)
}

.gallery-columns-3 .gallery-item {
    max-width: 32%;
    max-width: -webkit-calc(33.3% - 4px);
    max-width:calc(33.3% - 4px)
}

.gallery-columns-4 .gallery-item {
    max-width: 23%;
    max-width: -webkit-calc(25% - 4px);
    max-width:calc(25% - 4px)
}

.gallery-columns-5 .gallery-item {
    max-width: 19%;
    max-width: -webkit-calc(20% - 4px);
    max-width:calc(20% - 4px)
}

.gallery-columns-6 .gallery-item {
    max-width: 15%;
    max-width: -webkit-calc(16.7% - 4px);
    max-width:calc(16.7% - 4px)
}

.gallery-columns-7 .gallery-item {
    max-width: 13%;
    max-width: -webkit-calc(14.28% - 4px);
    max-width:calc(14.28% - 4px)
}

.gallery-columns-8 .gallery-item {
    max-width: 11%;
    max-width: -webkit-calc(12.5% - 4px);
    max-width:calc(12.5% - 4px)
}

.gallery-columns-9 .gallery-item {
    max-width: 9%;
    max-width: -webkit-calc(11.1% - 4px);
    max-width:calc(11.1% - 4px)
}

.gallery-columns-10 .gallery-item {
    max-width: 7%;
    max-width: -webkit-calc(9.4% - 0px);
    max-width:calc(9.4% - 0px)
}

.gallery-columns-1 .gallery-item:nth-of-type(1n), .gallery-columns-2 .gallery-item:nth-of-type(2n), .gallery-columns-3 .gallery-item:nth-of-type(3n), .gallery-columns-4 .gallery-item:nth-of-type(4n), .gallery-columns-5 .gallery-item:nth-of-type(5n), .gallery-columns-6 .gallery-item:nth-of-type(6n), .gallery-columns-7 .gallery-item:nth-of-type(7n), .gallery-columns-8 .gallery-item:nth-of-type(8n), .gallery-columns-9 .gallery-item:nth-of-type(9n), .gallery-columns-10 .gallery-item:nth-of-type(10n) {
    margin-right:0
}

.gallery-caption {
    background-color: rgba(0, 0, 0, .7);
    color: #fff;
    font-size: 12px;
    line-height: 1.5;
    margin: 0;
    max-height: 50%;
    opacity: 0;
    padding: 6px 8px;
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: left;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.gallery-caption:before {
    content: "";
    height: 100%;
    min-height: 49px;
    position: absolute;
    top: 0;
    left: 0;
    width:100%
}

.gallery-item:hover .gallery-caption {
    opacity:1
}

.gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption, .gallery-columns-10 .gallery-caption {
    display:none
}

.post_content .wp-smiley {
    border: 0;
    margin-bottom: 0;
    margin-top: 0;
    padding:0
}

.post_content address {
    margin: 0 0 24px;
    line-height:2.2
}

.post_content pre {
    border-left: 3px solid #ccc;
    background: #f8f8f8;
    font-size: 12px;
    margin: 0 0 27px;
    line-height: 1.7;
    padding: 20px;
    overflow:auto
}

.post_content .mejs-container {
    margin:12px 0 25px
}

.c-pw__desc, .c-pw__desc p {
    line-height:2.5
}

.c-pw__desc p {
    margin-bottom:16px !important
}

.c-pw__desc.type2 p {
    text-align:center
}

.c-pw__desc.type3 p {
    text-align:right
}

.c-pw__btn {
    border: none;
    background: #111;
    color: #fff;
    display: inline-block;
    padding: 0 20px;
    font-size: 14px;
    text-align: center;
    line-height: 40px;
    height:40px
}

.c-pw__btn:hover {
    background: #333;
    color:#fff
}

.c-pw__btn--register {
    min-width: 160px;
    margin-bottom:32px
}

.c-pw__btn--submit {
    background: #111;
    color: #fff;
    min-width: 100px;
    border: 0;
    cursor: pointer;
    top: -1px;
    position:relative
}

.c-pw .c-pw__btn:hover {
    text-decoration:none
}

.c-pw__btn.type2 {
    display: table;
    margin:0 auto 32px
}

.c-pw__btn.type3 {
    float:right
}

.c-pw__box {
    width: 100%;
    border: 1px solid #ddd;
    padding: 25px 36px;
    display: inline-block;
    margin-bottom: 40px;
    box-sizing: border-box;
    background:#fff
}

.c-pw__box .c-pw__box-desc {
    line-height: 1.2;
    margin-bottom:20px
}

.c-pw__box-label {
    margin-right:14px
}

.c-pw__box-input {
    border: 1px solid #ddd;
    background: #fff;
    height: 40px;
    width: 250px;
    margin-right: 13px;
    flex: 1;
    box-sizing: border-box;
    padding:0 10px
}

.post_content .c-pw__btn, .post_content .c-pw__btn:hover {
    color:#fff
}

.cardlink {
    word-wrap: break-word;
    max-width: 100%;
    margin: 45px 0 !important;
    padding: 12px;
    border: 1px solid #ddd;
    background:#fafafa
}

.cardlink_thumbnail {
    margin-right: 20px;
    float:left
}

.cardlink_content {
    line-height:1.6
}

.cardlink_timestamp {
    display: inline;
    margin: 0;
    padding: 0;
    color: #222;
    font-size: 12px;
    line-height: 1.6;
    vertical-align:top
}

.cardlink_title {
    margin: 0 0 5px;
    font-size:14px
}

.cardlink_title a {
    color: #000;
    font-weight: 700;
    text-decoration:none
}

.cardlink_title a:hover {
    text-decoration:underline
}

.cardlink_excerpt {
    overflow: hidden;
    color: #333;
    font-size: 12px;
    line-height:1.8
}

.cardlink_footer {
    clear:both
}

.clear {
    clear:both
}

@media screen and (max-width: 767px) {
    .cardlink_thumbnail {
        float:none
    }

    .cardlink_timestamp {
        line-height: 2.4;
        vertical-align:middle
    }

    .cardlink_excerpt {
        float:none
    }
}

.p-btn {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    min-width: 180px;
    height: 50px;
    padding: 0 15px;
    border-radius: 0;
    color: #fff;
    font-size: 14px;
    line-height: 50px;
    text-align:center
}

@media screen and (max-width: 767px) {
    .p-btn {
        height: 45px;
        font-size: 12px;
        line-height:45px
    }
}

.wp-block-social-links a {
    color:#fff !important
}

.has-small-font-size {
    font-size:.8125em !important
}

.has-normal-font-size, .has-regular-font-size {
    font-size:1em !important
}

.has-medium-font-size {
    font-size:1.25em !important
}

.has-large-font-size {
    font-size:2.25em !important
}

.has-huge-font-size, .has-larger-font-size {
    font-size:2.625em !important
}

.wp-block-archives {
    box-sizing:border-box
}

.wp-block-archives-dropdown label {
    display:block
}

.wp-block-avatar {
    box-sizing:border-box
}

.wp-block-avatar.aligncenter {
    text-align:center
}

.wp-block-audio {
    box-sizing:border-box
}

.wp-block-audio figcaption {
    margin-bottom: 1em;
    margin-top:.5em
}

.wp-block-audio audio {
    min-width: 300px;
    width:100%
}

.wp-block-button__link {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    word-break:break-word
}

.wp-block-button__link.aligncenter {
    text-align:center
}

.wp-block-button__link.alignright {
    text-align:right
}

:where(.wp-block-button__link) {
    border-radius: 9999px;
    box-shadow: none;
    padding: calc(.667em + 2px) calc(1.333em + 2px);
    text-decoration:none
}

.wp-block-button[style * =text-decoration] .wp-block-button__link {
    text-decoration:inherit
}

.wp-block-buttons > .wp-block-button.has-custom-width {
    max-width:none
}

.wp-block-buttons > .wp-block-button.has-custom-width .wp-block-button__link {
    width:100%
}

.wp-block-buttons > .wp-block-button.has-custom-font-size .wp-block-button__link {
    font-size:inherit
}

.wp-block-buttons > .wp-block-button.wp-block-button__width-25 {
    width:calc(25% - var(--wp--style--block-gap, .5em) * .75)
}

.wp-block-buttons > .wp-block-button.wp-block-button__width-50 {
    width:calc(50% - var(--wp--style--block-gap, .5em) * .5)
}

.wp-block-buttons > .wp-block-button.wp-block-button__width-75 {
    width:calc(75% - var(--wp--style--block-gap, .5em) * .25)
}

.wp-block-buttons > .wp-block-button.wp-block-button__width-100 {
    flex-basis: 100%;
    width:100%
}

.wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-25 {
    width:25%
}

.wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-50 {
    width:50%
}

.wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-75 {
    width:75%
}

.wp-block-button.is-style-squared, .wp-block-button__link.wp-block-button.is-style-squared {
    border-radius:0
}

.wp-block-button.no-border-radius, .wp-block-button__link.no-border-radius {
    border-radius:0 !important
}

.wp-block-button .wp-block-button__link.is-style-outline, .wp-block-button.is-style-outline > .wp-block-button__link {
    border: 2px solid;
    padding:.667em 1.333em
}

.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color), .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color) {
    color:currentColor
}

.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background), .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background) {
    background-color: transparent;
    background-image:none
}

.wp-block-buttons.is-vertical {
    flex-direction:column
}

.wp-block-buttons.is-vertical > .wp-block-button:last-child {
    margin-bottom:0
}

.wp-block-buttons > .wp-block-button {
    display: inline-block;
    margin:0
}

.wp-block-buttons.is-content-justification-left {
    justify-content:flex-start
}

.wp-block-buttons.is-content-justification-left.is-vertical {
    align-items:flex-start
}

.wp-block-buttons.is-content-justification-center {
    justify-content:center
}

.wp-block-buttons.is-content-justification-center.is-vertical {
    align-items:center
}

.wp-block-buttons.is-content-justification-right {
    justify-content:flex-end
}

.wp-block-buttons.is-content-justification-right.is-vertical {
    align-items:flex-end
}

.wp-block-buttons.is-content-justification-space-between {
    justify-content:space-between
}

.wp-block-buttons.aligncenter {
    text-align:center
}

.wp-block-buttons:not(.is-content-justification-space-between, .is-content-justification-right, .is-content-justification-left, .is-content-justification-center) .wp-block-button.aligncenter {
    margin-left: auto;
    margin-right: auto;
    width:100%
}

.wp-block-buttons[style * =text-decoration] .wp-block-button, .wp-block-buttons[style * =text-decoration] .wp-block-button__link {
    text-decoration:inherit
}

.wp-block-buttons.has-custom-font-size .wp-block-button__link {
    font-size:inherit
}

.wp-block-button.aligncenter, .wp-block-calendar {
    text-align:center
}

.wp-block-calendar td, .wp-block-calendar th {
    border: 1px solid;
    padding:.25em
}

.wp-block-calendar th {
    font-weight:400
}

.wp-block-calendar caption {
    background-color:inherit
}

.wp-block-calendar table {
    border-collapse: collapse;
    width:100%
}

.wp-block-calendar table:where(:not(.has-text-color)) {
    color:#40464d
}

.wp-block-calendar table:where(:not(.has-text-color)) td, .wp-block-calendar table:where(:not(.has-text-color)) th {
    border-color:#ddd
}

.wp-block-calendar table.has-background th {
    background-color:inherit
}

.wp-block-calendar table.has-text-color th {
    color:inherit
}

:where(.wp-block-calendar table:not(.has-background) th) {
    background:#eb8d5e
}

.wp-block-categories {
    box-sizing:border-box
}

.wp-block-categories.alignleft {
    margin-right:2em
}

.wp-block-categories.alignright {
    margin-left:2em
}

.wp-block-code {
    box-sizing:border-box
}

.wp-block-code code {
    display: block;
    font-family: inherit;
    overflow-wrap: break-word;
    white-space:pre-wrap
}

.wp-block-columns {
    align-items: normal !important;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap !important;
    margin-bottom:1.75em
}

@media (min-width: 782px) {
    .wp-block-columns {
        flex-wrap:nowrap !important
    }
}

.wp-block-columns.are-vertically-aligned-top {
    align-items:flex-start
}

.wp-block-columns.are-vertically-aligned-center {
    align-items:center
}

.wp-block-columns.are-vertically-aligned-bottom {
    align-items:flex-end
}

@media (max-width: 781px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis:100% !important
    }
}

@media (min-width: 782px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 0;
        flex-grow:1
    }

    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style * =flex-basis] {
        flex-grow:0
    }
}

.wp-block-columns.is-not-stacked-on-mobile {
    flex-wrap:nowrap !important
}

.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
    flex-basis: 0;
    flex-grow:1
}

.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column[style * =flex-basis] {
    flex-grow:0
}

:where(.wp-block-columns.has-background) {
    padding:1.25em 2.375em
}

.wp-block-column {
    flex-grow: 1;
    min-width: 0;
    overflow-wrap: break-word;
    word-break:break-word
}

.wp-block-column.is-vertically-aligned-top {
    align-self:flex-start
}

.wp-block-column.is-vertically-aligned-center {
    align-self:center
}

.wp-block-column.is-vertically-aligned-bottom {
    align-self:flex-end
}

.wp-block-column.is-vertically-aligned-bottom, .wp-block-column.is-vertically-aligned-center, .wp-block-column.is-vertically-aligned-top {
    width:100%
}

.wp-block-post-comments {
    box-sizing:border-box
}

.wp-block-post-comments .alignleft {
    float:left
}

.wp-block-post-comments .alignright {
    float:right
}

.wp-block-post-comments .navigation:after {
    clear: both;
    content: "";
    display:table
}

.wp-block-post-comments .commentlist {
    clear: both;
    list-style: none;
    margin: 0;
    padding:0
}

.wp-block-post-comments .commentlist .comment {
    min-height: 2.25em;
    padding-left:3.25em
}

.wp-block-post-comments .commentlist .comment p {
    font-size: 1em;
    line-height: 1.8;
    margin:1em 0
}

.wp-block-post-comments .commentlist .children {
    list-style: none;
    margin: 0;
    padding:0
}

.wp-block-post-comments .comment-author {
    line-height:1.5
}

.wp-block-post-comments .comment-author .avatar {
    border-radius: 1.5em;
    display: block;
    float: left;
    height: 2.5em;
    margin-right: .75em;
    margin-top: .5em;
    width:2.5em
}

.wp-block-post-comments .comment-author cite {
    font-style:normal
}

.wp-block-post-comments .comment-meta {
    font-size: .875em;
    line-height:1.5
}

.wp-block-post-comments .comment-meta b {
    font-weight:400
}

.wp-block-post-comments .comment-meta .comment-awaiting-moderation {
    display: block;
    margin-bottom: 1em;
    margin-top:1em
}

.wp-block-post-comments .comment-body .commentmetadata {
    font-size:.875em
}

.wp-block-post-comments .comment-form-author label, .wp-block-post-comments .comment-form-comment label, .wp-block-post-comments .comment-form-email label, .wp-block-post-comments .comment-form-url label {
    display: block;
    margin-bottom:.25em
}

.wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]), .wp-block-post-comments .comment-form textarea {
    box-sizing: border-box;
    display: block;
    width:100%
}

.wp-block-post-comments .comment-form-cookies-consent {
    display: flex;
    gap:.25em
}

.wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent {
    margin-top:.35em
}

.wp-block-post-comments .comment-reply-title {
    margin-bottom:0
}

.wp-block-post-comments .comment-reply-title :where(small) {
    font-size: var(--wp--preset--font-size--medium, smaller);
    margin-left:.5em
}

.wp-block-post-comments .reply {
    font-size: .875em;
    margin-bottom:1.4em
}

.wp-block-post-comments input:not([type=submit]), .wp-block-post-comments textarea {
    border: 1px solid #949494;
    font-family: inherit;
    font-size:1em
}

.wp-block-post-comments input:not([type=submit]):not([type=checkbox]), .wp-block-post-comments textarea {
    padding:calc(.667em + 2px)
}

:where(.wp-block-post-comments input[type=submit]) {
    border:none
}

.wp-block-comments-pagination > .wp-block-comments-pagination-next, .wp-block-comments-pagination > .wp-block-comments-pagination-numbers, .wp-block-comments-pagination > .wp-block-comments-pagination-previous {
    margin-bottom: .5em;
    margin-right:.5em
}

.wp-block-comments-pagination > .wp-block-comments-pagination-next:last-child, .wp-block-comments-pagination > .wp-block-comments-pagination-numbers:last-child, .wp-block-comments-pagination > .wp-block-comments-pagination-previous:last-child {
    margin-right:0
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous-arrow {
    display: inline-block;
    margin-right:1ch
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous-arrow:not(.is-arrow-chevron) {
    transform:scaleX(1)
}

.wp-block-comments-pagination .wp-block-comments-pagination-next-arrow {
    display: inline-block;
    margin-left:1ch
}

.wp-block-comments-pagination .wp-block-comments-pagination-next-arrow:not(.is-arrow-chevron) {
    transform:scaleX(1)
}

.wp-block-comments-pagination.aligncenter {
    justify-content:center
}

.wp-block-comment-template {
    box-sizing: border-box;
    list-style: none;
    margin-bottom: 0;
    max-width: 100%;
    padding:0
}

.wp-block-comment-template li {
    clear:both
}

.wp-block-comment-template ol {
    list-style: none;
    margin-bottom: 0;
    max-width: 100%;
    padding-left:2rem
}

.wp-block-comment-template.alignleft {
    float:left
}

.wp-block-comment-template.aligncenter {
    margin-left: auto;
    margin-right: auto;
    width: -moz-fit-content;
    width:fit-content
}

.wp-block-comment-template.alignright {
    float:right
}

.wp-block-cover, .wp-block-cover-image {
    align-items: center;
    background-position: 50%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    min-height: 430px;
    padding: 1em;
    position:relative
}

.wp-block-cover .has-background-dim:not([class * =-background-color]), .wp-block-cover-image .has-background-dim:not([class * =-background-color]), .wp-block-cover-image.has-background-dim:not([class * =-background-color]), .wp-block-cover.has-background-dim:not([class * =-background-color]) {
    background-color:#000
}

.wp-block-cover .has-background-dim.has-background-gradient, .wp-block-cover-image .has-background-dim.has-background-gradient {
    background-color:transparent
}

.wp-block-cover-image.has-background-dim:before, .wp-block-cover.has-background-dim:before {
    background-color: inherit;
    content: ""
}

.wp-block-cover .wp-block-cover__background, .wp-block-cover .wp-block-cover__gradient-background, .wp-block-cover-image .wp-block-cover__background, .wp-block-cover-image .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim:not(.has-background-gradient):before, .wp-block-cover.has-background-dim:not(.has-background-gradient):before {
    bottom: 0;
    left: 0;
    opacity: .5;
    position: absolute;
    right: 0;
    top: 0;
    z-index:1
}

.wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-10:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-10:not(.has-background-gradient):before {
    opacity:.1
}

.wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-20:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-20:not(.has-background-gradient):before {
    opacity:.2
}

.wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-30:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-30:not(.has-background-gradient):before {
    opacity:.3
}

.wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-40:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-40:not(.has-background-gradient):before {
    opacity:.4
}

.wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-50:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-50:not(.has-background-gradient):before {
    opacity:.5
}

.wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-60:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-60:not(.has-background-gradient):before {
    opacity:.6
}

.wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-70:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-70:not(.has-background-gradient):before {
    opacity:.7
}

.wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-80:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-80:not(.has-background-gradient):before {
    opacity:.8
}

.wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-90:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-90:not(.has-background-gradient):before {
    opacity:.9
}

.wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__background, .wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background, .wp-block-cover-image.has-background-dim.has-background-dim-100:not(.has-background-gradient):before, .wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__background, .wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-100:not(.has-background-gradient):before {
    opacity:1
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-0, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-0, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0 {
    opacity:0
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-10, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-10, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10 {
    opacity:.1
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-20, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-20, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20 {
    opacity:.2
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-30, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-30, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30 {
    opacity:.3
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-40, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-40, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40 {
    opacity:.4
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-50, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-50, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50 {
    opacity:.5
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-60, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-60, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60 {
    opacity:.6
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-70, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-70, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70 {
    opacity:.7
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-80, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-80, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80 {
    opacity:.8
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-90, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-90, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90 {
    opacity:.9
}

.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-100, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100, .wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-100, .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100 {
    opacity:1
}

.wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover.alignleft, .wp-block-cover.alignright {
    max-width: 420px;
    width:100%
}

.wp-block-cover-image:after, .wp-block-cover:after {
    content: "";
    display: block;
    font-size: 0;
    min-height:inherit
}

@supports (position: sticky) {
    .wp-block-cover-image:after, .wp-block-cover:after {
        content:none
    }
}

.wp-block-cover-image.aligncenter, .wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover.aligncenter, .wp-block-cover.alignleft, .wp-block-cover.alignright {
    display:flex
}

.wp-block-cover .wp-block-cover__inner-container, .wp-block-cover-image .wp-block-cover__inner-container {
    color: #fff;
    width: 100%;
    z-index:1
}

.wp-block-cover-image.is-light .wp-block-cover__inner-container, .wp-block-cover.is-light .wp-block-cover__inner-container {
    color:#000
}

.wp-block-cover h1:not(.has-text-color), .wp-block-cover h2:not(.has-text-color), .wp-block-cover h3:not(.has-text-color), .wp-block-cover h4:not(.has-text-color), .wp-block-cover h5:not(.has-text-color), .wp-block-cover h6:not(.has-text-color), .wp-block-cover p:not(.has-text-color), .wp-block-cover-image h1:not(.has-text-color), .wp-block-cover-image h2:not(.has-text-color), .wp-block-cover-image h3:not(.has-text-color), .wp-block-cover-image h4:not(.has-text-color), .wp-block-cover-image h5:not(.has-text-color), .wp-block-cover-image h6:not(.has-text-color), .wp-block-cover-image p:not(.has-text-color) {
    color:inherit
}

.wp-block-cover-image.is-position-top-left, .wp-block-cover.is-position-top-left {
    align-items: flex-start;
    justify-content:flex-start
}

.wp-block-cover-image.is-position-top-center, .wp-block-cover.is-position-top-center {
    align-items: flex-start;
    justify-content:center
}

.wp-block-cover-image.is-position-top-right, .wp-block-cover.is-position-top-right {
    align-items: flex-start;
    justify-content:flex-end
}

.wp-block-cover-image.is-position-center-left, .wp-block-cover.is-position-center-left {
    align-items: center;
    justify-content:flex-start
}

.wp-block-cover-image.is-position-center-center, .wp-block-cover.is-position-center-center {
    align-items: center;
    justify-content:center
}

.wp-block-cover-image.is-position-center-right, .wp-block-cover.is-position-center-right {
    align-items: center;
    justify-content:flex-end
}

.wp-block-cover-image.is-position-bottom-left, .wp-block-cover.is-position-bottom-left {
    align-items: flex-end;
    justify-content:flex-start
}

.wp-block-cover-image.is-position-bottom-center, .wp-block-cover.is-position-bottom-center {
    align-items: flex-end;
    justify-content:center
}

.wp-block-cover-image.is-position-bottom-right, .wp-block-cover.is-position-bottom-right {
    align-items: flex-end;
    justify-content:flex-end
}

.wp-block-cover-image.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, .wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container {
    margin: 0;
    width:auto
}

.wp-block-cover .wp-block-cover__image-background, .wp-block-cover video.wp-block-cover__video-background, .wp-block-cover-image .wp-block-cover__image-background, .wp-block-cover-image video.wp-block-cover__video-background {
    border: none;
    bottom: 0;
    box-shadow: none;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
    outline: none;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width:100%
}

.wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax, .wp-block-cover__image-background.has-parallax, video.wp-block-cover__video-background.has-parallax {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size:cover
}

@supports (-webkit-overflow-scrolling: touch) {
    .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax, .wp-block-cover__image-background.has-parallax, video.wp-block-cover__video-background.has-parallax {
        background-attachment:scroll
    }
}

@media (prefers-reduced-motion: reduce) {
    .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax, .wp-block-cover__image-background.has-parallax, video.wp-block-cover__video-background.has-parallax {
        background-attachment:scroll
    }
}

.wp-block-cover-image.is-repeated, .wp-block-cover.is-repeated, .wp-block-cover__image-background.is-repeated, video.wp-block-cover__video-background.is-repeated {
    background-repeat: repeat;
    background-size:auto
}

.wp-block-cover__image-background, .wp-block-cover__video-background {
    z-index:0
}

.wp-block-cover-image-text, .wp-block-cover-image-text a, .wp-block-cover-image-text a:active, .wp-block-cover-image-text a:focus, .wp-block-cover-image-text a:hover, .wp-block-cover-text, .wp-block-cover-text a, .wp-block-cover-text a:active, .wp-block-cover-text a:focus, .wp-block-cover-text a:hover, section.wp-block-cover-image h2, section.wp-block-cover-image h2 a, section.wp-block-cover-image h2 a:active, section.wp-block-cover-image h2 a:focus, section.wp-block-cover-image h2 a:hover {
    color:#fff
}

.wp-block-cover-image .wp-block-cover.has-left-content {
    justify-content:flex-start
}

.wp-block-cover-image .wp-block-cover.has-right-content {
    justify-content:flex-end
}

.wp-block-cover-image.has-left-content .wp-block-cover-image-text, .wp-block-cover.has-left-content .wp-block-cover-text, section.wp-block-cover-image.has-left-content > h2 {
    margin-left: 0;
    text-align:left
}

.wp-block-cover-image.has-right-content .wp-block-cover-image-text, .wp-block-cover.has-right-content .wp-block-cover-text, section.wp-block-cover-image.has-right-content > h2 {
    margin-right: 0;
    text-align:right
}

.wp-block-cover .wp-block-cover-text, .wp-block-cover-image .wp-block-cover-image-text, section.wp-block-cover-image > h2 {
    font-size: 2em;
    line-height: 1.25;
    margin-bottom: 0;
    max-width: 840px;
    padding: .44em;
    text-align: center;
    z-index: 1
}

.wp-block-embed.alignleft, .wp-block-embed.alignright, .wp-block[data-align=left] > [data-type="core/embed"], .wp-block[data-align=right] > [data-type="core/embed"] {
    max-width: 360px;
    width: 100%
}

.wp-block-embed.alignleft .wp-block-embed__wrapper, .wp-block-embed.alignright .wp-block-embed__wrapper, .wp-block[data-align=left] > [data-type="core/embed"] .wp-block-embed__wrapper, .wp-block[data-align=right] > [data-type="core/embed"] .wp-block-embed__wrapper {
    min-width:280px
}

.wp-block-cover .wp-block-embed {
    min-height: 240px;
    min-width:320px
}

.wp-block-embed {
    overflow-wrap:break-word
}

.wp-block-embed figcaption {
    margin-bottom: 1em;
    margin-top:.5em
}

.wp-block-embed iframe {
    max-width:100%
}

.wp-block-embed__wrapper {
    position:relative
}

.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before {
    content: "";
    display: block;
    padding-top:50%
}

.wp-embed-responsive .wp-has-aspect-ratio iframe {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width:100%
}

.wp-embed-responsive .wp-embed-aspect-21-9 .wp-block-embed__wrapper:before {
    padding-top:42.85%
}

.wp-embed-responsive .wp-embed-aspect-18-9 .wp-block-embed__wrapper:before {
    padding-top:50%
}

.wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper:before {
    padding-top:56.25%
}

.wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper:before {
    padding-top:75%
}

.wp-embed-responsive .wp-embed-aspect-1-1 .wp-block-embed__wrapper:before {
    padding-top:100%
}

.wp-embed-responsive .wp-embed-aspect-9-16 .wp-block-embed__wrapper:before {
    padding-top:177.77%
}

.wp-embed-responsive .wp-embed-aspect-1-2 .wp-block-embed__wrapper:before {
    padding-top:200%
}

.wp-block-file {
    margin-bottom:1.5em
}

.wp-block-file:not(.wp-element-button) {
    font-size:.8em
}

.wp-block-file.aligncenter {
    text-align:center
}

.wp-block-file.alignright {
    text-align:right
}

.wp-block-file * + .wp-block-file__button {
    margin-left:.75em
}

.wp-block-file__embed {
    margin-bottom:1em
}

:where(.wp-block-file__button) {
    border-radius: 2em;
    padding:.5em 1em
}

:where(.wp-block-file__button):is(a):active, :where(.wp-block-file__button):is(a):focus, :where(.wp-block-file__button):is(a):hover, :where(.wp-block-file__button):is(a):visited {
    box-shadow: none;
    color: #fff;
    opacity: .85;
    text-decoration:none
}

.blocks-gallery-grid:not(.has-nested-images), .wp-block-gallery:not(.has-nested-images) {
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    margin: 0;
    padding:0
}

.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-item {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: center;
    margin: 0 1em 1em 0;
    position: relative;
    width:calc(50% - 1em)
}

.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image:nth-of-type(2n), .blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item:nth-of-type(2n), .wp-block-gallery:not(.has-nested-images) .blocks-gallery-image:nth-of-type(2n), .wp-block-gallery:not(.has-nested-images) .blocks-gallery-item:nth-of-type(2n) {
    margin-right:0
}

.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image figure, .blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item figure, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-image figure, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-item figure {
    align-items: flex-end;
    display: flex;
    height: 100%;
    justify-content: flex-start;
    margin:0
}

.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image img, .blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item img, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-image img, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-item img {
    display: block;
    height: auto;
    max-width: 100%;
    width:auto
}

.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image figcaption, .blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item figcaption, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-image figcaption, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-item figcaption {
    background: linear-gradient(0deg, rgba(0, 0, 0, .7), rgba(0, 0, 0, .3) 70%, transparent);
    bottom: 0;
    box-sizing: border-box;
    color: #fff;
    font-size: .8em;
    margin: 0;
    max-height: 100%;
    overflow: auto;
    padding: 3em .77em .7em;
    position: absolute;
    text-align: center;
    width: 100%;
    z-index:2
}

.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image figcaption img, .blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item figcaption img, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-image figcaption img, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-item figcaption img {
    display:inline
}

.blocks-gallery-grid:not(.has-nested-images) figcaption, .wp-block-gallery:not(.has-nested-images) figcaption {
    flex-grow:1
}

.blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-image a, .blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-image img, .blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-item a, .blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-item img, .wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-image a, .wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-image img, .wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-item a, .wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-item img {
    flex: 1;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width:100%
}

.blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-item {
    margin-right: 0;
    width:100%
}

@media (min-width: 600px) {
    .blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-item {
        margin-right: 1em;
        width:calc(33.33333% - .66667em)
    }

    .blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-item {
        margin-right: 1em;
        width:calc(25% - .75em)
    }

    .blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-item {
        margin-right: 1em;
        width:calc(20% - .8em)
    }

    .blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-item {
        margin-right: 1em;
        width:calc(16.66667% - .83333em)
    }

    .blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-item {
        margin-right: 1em;
        width:calc(14.28571% - .85714em)
    }

    .blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-image, .blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-item, .wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-image, .wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-item {
        margin-right: 1em;
        width:calc(12.5% - .875em)
    }

    .blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-image:nth-of-type(1n), .blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-item:nth-of-type(1n), .blocks-gallery-grid:not(.has-nested-images).columns-2 .blocks-gallery-image:nth-of-type(2n), .blocks-gallery-grid:not(.has-nested-images).columns-2 .blocks-gallery-item:nth-of-type(2n), .blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-image:nth-of-type(3n), .blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-item:nth-of-type(3n), .blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-image:nth-of-type(4n), .blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-item:nth-of-type(4n), .blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-image:nth-of-type(5n), .blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-item:nth-of-type(5n), .blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-image:nth-of-type(6n), .blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-item:nth-of-type(6n), .blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-image:nth-of-type(7n), .blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-item:nth-of-type(7n), .blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-image:nth-of-type(8n), .blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-item:nth-of-type(8n), .wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-image:nth-of-type(1n), .wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-item:nth-of-type(1n), .wp-block-gallery:not(.has-nested-images).columns-2 .blocks-gallery-image:nth-of-type(2n), .wp-block-gallery:not(.has-nested-images).columns-2 .blocks-gallery-item:nth-of-type(2n), .wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-image:nth-of-type(3n), .wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-item:nth-of-type(3n), .wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-image:nth-of-type(4n), .wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-item:nth-of-type(4n), .wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-image:nth-of-type(5n), .wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-item:nth-of-type(5n), .wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-image:nth-of-type(6n), .wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-item:nth-of-type(6n), .wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-image:nth-of-type(7n), .wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-item:nth-of-type(7n), .wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-image:nth-of-type(8n), .wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-item:nth-of-type(8n) {
        margin-right:0
    }
}

.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image:last-child, .blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item:last-child, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-image:last-child, .wp-block-gallery:not(.has-nested-images) .blocks-gallery-item:last-child {
    margin-right:0
}

.blocks-gallery-grid:not(.has-nested-images).alignleft, .blocks-gallery-grid:not(.has-nested-images).alignright, .wp-block-gallery:not(.has-nested-images).alignleft, .wp-block-gallery:not(.has-nested-images).alignright {
    max-width: 420px;
    width:100%
}

.blocks-gallery-grid:not(.has-nested-images).aligncenter .blocks-gallery-item figure, .wp-block-gallery:not(.has-nested-images).aligncenter .blocks-gallery-item figure {
    justify-content:center
}

.wp-block-gallery:not(.is-cropped) .blocks-gallery-item {
    align-self:flex-start
}

figure.wp-block-gallery.has-nested-images {
    align-items:normal
}

.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
    margin: 0;
    width:calc(50% - var(--wp--style--unstable-gallery-gap, 16px)/2)
}

.wp-block-gallery.has-nested-images figure.wp-block-image {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: center;
    max-width: 100%;
    position:relative
}

.wp-block-gallery.has-nested-images figure.wp-block-image > a, .wp-block-gallery.has-nested-images figure.wp-block-image > div {
    flex-direction: column;
    flex-grow: 1;
    margin:0
}

.wp-block-gallery.has-nested-images figure.wp-block-image img {
    display: block;
    height: auto;
    max-width: 100% !important;
    width:auto
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    background: linear-gradient(0deg, rgba(0, 0, 0, .7), rgba(0, 0, 0, .3) 70%, transparent);
    bottom: 0;
    box-sizing: border-box;
    color: #fff;
    font-size: 13px;
    left: 0;
    margin-bottom: 0;
    max-height: 60%;
    overflow: auto;
    padding: 0 8px 8px;
    position: absolute;
    text-align: center;
    width:100%
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption img {
    display:inline
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption a {
    color:inherit
}

.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border img {
    box-sizing:border-box
}

.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border > a, .wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border > div, .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded > a, .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded > div {
    flex:1 1 auto
}

.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border figcaption, .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded figcaption {
    background: none;
    color: inherit;
    flex: initial;
    margin: 0;
    padding: 10px 10px 9px;
    position:relative
}

.wp-block-gallery.has-nested-images figcaption {
    flex-basis: 100%;
    flex-grow: 1;
    text-align:center
}

.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) {
    margin-bottom: auto;
    margin-top:0
}

.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) {
    align-self:inherit
}

.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) > a, .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) > div:not(.components-drop-zone) {
    display:flex
}

.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a, .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img {
    flex: 1 0 0%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width:100%
}

.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image) {
    width:100%
}

@media (min-width: 600px) {
    .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) {
        width:calc(33.33333% - var(--wp--style--unstable-gallery-gap, 16px) * .66667)
    }

    .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) {
        width:calc(25% - var(--wp--style--unstable-gallery-gap, 16px) * .75)
    }

    .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image) {
        width:calc(20% - var(--wp--style--unstable-gallery-gap, 16px) * .8)
    }

    .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image) {
        width:calc(16.66667% - var(--wp--style--unstable-gallery-gap, 16px) * .83333)
    }

    .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image) {
        width:calc(14.28571% - var(--wp--style--unstable-gallery-gap, 16px) * .85714)
    }

    .wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image) {
        width:calc(12.5% - var(--wp--style--unstable-gallery-gap, 16px) * .875)
    }

    .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
        width:calc(33.33% - var(--wp--style--unstable-gallery-gap, 16px) * .66667)
    }

    .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2), .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2) ~ figure.wp-block-image:not(#individual-image) {
        width:calc(50% - var(--wp--style--unstable-gallery-gap, 16px) * .5)
    }

    .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:last-child {
        width:100%
    }
}

.wp-block-gallery.has-nested-images.alignleft, .wp-block-gallery.has-nested-images.alignright {
    max-width: 420px;
    width:100%
}

.wp-block-gallery.has-nested-images.aligncenter {
    justify-content:center
}

.wp-block-group {
    box-sizing:border-box
}

h1.has-background, h2.has-background, h3.has-background, h4.has-background, h5.has-background, h6.has-background {
    padding:1.25em 2.375em
}

.wp-block-image img {
    height: auto;
    max-width: 100%;
    vertical-align:bottom
}

.wp-block-image img, .wp-block-image.has-custom-border img {
    box-sizing:border-box
}

.wp-block-image.aligncenter {
    text-align:center
}

.wp-block-image.alignfull img, .wp-block-image.alignwide img {
    height: auto;
    width:100%
}

.wp-block-image .aligncenter, .wp-block-image .alignleft, .wp-block-image .alignright, .wp-block-image.aligncenter, .wp-block-image.alignleft, .wp-block-image.alignright {
    display:table
}

.wp-block-image .aligncenter > figcaption, .wp-block-image .alignleft > figcaption, .wp-block-image .alignright > figcaption, .wp-block-image.aligncenter > figcaption, .wp-block-image.alignleft > figcaption, .wp-block-image.alignright > figcaption {
    caption-side: bottom;
    display:table-caption
}

.wp-block-image .alignleft {
    float: left;
    margin:.5em 1em .5em 0
}

.wp-block-image .alignright {
    float: right;
    margin:.5em 0 .5em 1em
}

.wp-block-image .aligncenter {
    margin-left: auto;
    margin-right:auto
}

.wp-block-image figcaption {
    margin-bottom: 1em;
    margin-top:.5em
}

.wp-block-image .is-style-rounded img, .wp-block-image.is-style-circle-mask img, .wp-block-image.is-style-rounded img {
    border-radius:9999px
}

@supports ((-webkit-mask-image: none) or(mask-image: none)) or(-webkit-mask-image: none) {
    .wp-block-image.is-style-circle-mask img {
        border-radius: 0;
        -webkit-mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');
        mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');
        mask-mode: alpha;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-size: contain;
        mask-size:contain
    }
}

.wp-block-image :where(.has-border-color) {
    border-style:solid
}

.wp-block-image :where([style * =border-top-color]) {
    border-top-style:solid
}

.wp-block-image :where([style * =border-right-color]) {
    border-right-style:solid
}

.wp-block-image :where([style * =border-bottom-color]) {
    border-bottom-style:solid
}

.wp-block-image :where([style * =border-left-color]) {
    border-left-style:solid
}

.wp-block-image :where([style * =border-width]) {
    border-style:solid
}

.wp-block-image :where([style * =border-top-width]) {
    border-top-style:solid
}

.wp-block-image :where([style * =border-right-width]) {
    border-right-style:solid
}

.wp-block-image :where([style * =border-bottom-width]) {
    border-bottom-style:solid
}

.wp-block-image :where([style * =border-left-width]) {
    border-left-style:solid
}

.wp-block-image figure {
    margin:0
}

ol.wp-block-latest-comments {
    box-sizing: border-box;
    margin-left:0
}

.wp-block-latest-comments .wp-block-latest-comments {
    padding-left:0
}

.wp-block-latest-comments__comment {
    line-height: 1.1;
    list-style: none;
    margin-bottom:1em
}

.has-avatars .wp-block-latest-comments__comment {
    list-style: none;
    min-height:2.25em
}

.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt, .has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta {
    margin-left:3.25em
}

.has-dates .wp-block-latest-comments__comment, .has-excerpts .wp-block-latest-comments__comment {
    line-height:1.5
}

.wp-block-latest-comments__comment-excerpt p {
    font-size: .875em;
    line-height: 1.8;
    margin:.36em 0 1.4em
}

.wp-block-latest-comments__comment-date {
    display: block;
    font-size:.75em
}

.wp-block-latest-comments .avatar, .wp-block-latest-comments__comment-avatar {
    border-radius: 1.5em;
    display: block;
    float: left;
    height: 2.5em;
    margin-right: .75em;
    width:2.5em
}

.wp-block-latest-posts {
    box-sizing:border-box
}

.wp-block-latest-posts.alignleft {
    margin-right:2em
}

.wp-block-latest-posts.alignright {
    margin-left:2em
}

.wp-block-latest-posts.wp-block-latest-posts__list {
    list-style: none;
    padding-left:0
}

.wp-block-latest-posts.wp-block-latest-posts__list li {
    clear:both
}

.wp-block-latest-posts.is-grid {
    display: flex;
    flex-wrap: wrap;
    padding:0
}

.wp-block-latest-posts.is-grid li {
    margin: 0 1.25em 1.25em 0;
    width:100%
}

@media (min-width: 600px) {
    .wp-block-latest-posts.columns-2 li {
        width:calc(50% - .625em)
    }

    .wp-block-latest-posts.columns-2 li:nth-child(2n) {
        margin-right:0
    }

    .wp-block-latest-posts.columns-3 li {
        width:calc(33.33333% - .83333em)
    }

    .wp-block-latest-posts.columns-3 li:nth-child(3n) {
        margin-right:0
    }

    .wp-block-latest-posts.columns-4 li {
        width:calc(25% - .9375em)
    }

    .wp-block-latest-posts.columns-4 li:nth-child(4n) {
        margin-right:0
    }

    .wp-block-latest-posts.columns-5 li {
        width:calc(20% - 1em)
    }

    .wp-block-latest-posts.columns-5 li:nth-child(5n) {
        margin-right:0
    }

    .wp-block-latest-posts.columns-6 li {
        width:calc(16.66667% - 1.04167em)
    }

    .wp-block-latest-posts.columns-6 li:nth-child(6n) {
        margin-right:0
    }
}

.wp-block-latest-posts__post-author, .wp-block-latest-posts__post-date {
    display: block;
    font-size:.8125em
}

.wp-block-latest-posts__post-excerpt {
    margin-bottom: 1em;
    margin-top:.5em
}

.wp-block-latest-posts__featured-image a {
    display:inline-block
}

.wp-block-latest-posts__featured-image img {
    height: auto;
    max-width: 100%;
    width:auto
}

.wp-block-latest-posts__featured-image.alignleft {
    float: left;
    margin-right:1em
}

.wp-block-latest-posts__featured-image.alignright {
    float: right;
    margin-left:1em
}

.wp-block-latest-posts__featured-image.aligncenter {
    margin-bottom: 1em;
    text-align:center
}

ol, ul {
    box-sizing:border-box
}

ol.has-background, ul.has-background {
    padding:1.25em 2.375em
}

.wp-block-media-text {
    box-sizing: border-box;
    direction: ltr;
    display: grid;
    grid-template-columns: 50% 1fr;
    grid-template-rows:auto
}

.wp-block-media-text.has-media-on-the-right {
    grid-template-columns:1fr 50%
}

.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__media {
    align-self:start
}

.wp-block-media-text .wp-block-media-text__content, .wp-block-media-text .wp-block-media-text__media, .wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media {
    align-self:center
}

.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__media {
    align-self:end
}

.wp-block-media-text .wp-block-media-text__media {
    grid-column: 1;
    grid-row: 1;
    margin:0
}

.wp-block-media-text .wp-block-media-text__content {
    direction: ltr;
    grid-column: 2;
    grid-row: 1;
    padding: 0 8%;
    word-break:break-word
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
    grid-column: 2;
    grid-row:1
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    grid-column: 1;
    grid-row:1
}

.wp-block-media-text__media img, .wp-block-media-text__media video {
    height: auto;
    max-width: unset;
    vertical-align: middle;
    width:100%
}

.wp-block-media-text.is-image-fill .wp-block-media-text__media {
    background-size: cover;
    height: 100%;
    min-height:250px
}

.wp-block-media-text.is-image-fill .wp-block-media-text__media > a {
    display: block;
    height:100%
}

.wp-block-media-text.is-image-fill .wp-block-media-text__media img {
    clip: rect(0, 0, 0, 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width:1px
}

@media (max-width: 600px) {
    .wp-block-media-text.is-stacked-on-mobile {
        grid-template-columns:100% !important
    }

    .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
        grid-column: 1;
        grid-row:1
    }

    .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
        grid-column: 1;
        grid-row:2
    }
}

.wp-block-navigation {
    --navigation-layout-justification-setting: flex-start;
    --navigation-layout-direction: row;
    --navigation-layout-wrap: wrap;
    --navigation-layout-justify: flex-start;
    --navigation-layout-align: center;
    position:relative
}

.wp-block-navigation ul {
    margin-bottom: 0;
    margin-left: 0;
    margin-top: 0;
    padding-left:0
}

.wp-block-navigation ul, .wp-block-navigation ul li {
    list-style: none;
    padding:0
}

.wp-block-navigation .wp-block-navigation-item {
    align-items: center;
    display: flex;
    position:relative
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty {
    display:none
}

.wp-block-navigation .wp-block-navigation-item__content {
    display:block
}

.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {
    color:inherit
}

.wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content, .wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content:active, .wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content:focus {
    text-decoration:underline
}

.wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content, .wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content:active, .wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content:focus {
    text-decoration:line-through
}

.wp-block-navigation:where(:not([class * =has-text-decoration])) a {
    text-decoration:none
}

.wp-block-navigation:where(:not([class * =has-text-decoration])) a:active, .wp-block-navigation:where(:not([class * =has-text-decoration])) a:focus {
    text-decoration:none
}

.wp-block-navigation .wp-block-navigation__submenu-icon {
    align-self: center;
    background-color: inherit;
    border: none;
    color: currentColor;
    display: inline-block;
    font-size: inherit;
    height: .6em;
    line-height: 0;
    margin-left: .25em;
    padding: 0;
    width:.6em
}

.wp-block-navigation .wp-block-navigation__submenu-icon svg {
    stroke: currentColor;
    display: inline-block;
    height: inherit;
    margin-top: .075em;
    width:inherit
}

.wp-block-navigation.is-vertical {
    --navigation-layout-direction: column;
    --navigation-layout-justify: initial;
    --navigation-layout-align:flex-start
}

.wp-block-navigation.no-wrap {
    --navigation-layout-wrap:nowrap
}

.wp-block-navigation.items-justified-center {
    --navigation-layout-justification-setting: center;
    --navigation-layout-justify:center
}

.wp-block-navigation.items-justified-center.is-vertical {
    --navigation-layout-align:center
}

.wp-block-navigation.items-justified-right {
    --navigation-layout-justification-setting: flex-end;
    --navigation-layout-justify:flex-end
}

.wp-block-navigation.items-justified-right.is-vertical {
    --navigation-layout-align:flex-end
}

.wp-block-navigation.items-justified-space-between {
    --navigation-layout-justification-setting: space-between;
    --navigation-layout-justify:space-between
}

.wp-block-navigation .has-child .wp-block-navigation__submenu-container {
    align-items: normal;
    background-color: inherit;
    color: inherit;
    display: flex;
    flex-direction: column;
    height: 0;
    left: -1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    top: 100%;
    transition: opacity .1s linear;
    visibility: hidden;
    width: 0;
    z-index:2
}

.wp-block-navigation .has-child .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content {
    display: flex;
    flex-grow:1
}

.wp-block-navigation .has-child .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation__submenu-icon {
    margin-left: auto;
    margin-right:0
}

.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    margin:0
}

@media (min-width: 782px) {
    .wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
        left: 100%;
        top:-1px
    }

    .wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before {
        background: transparent;
        content: "";
        display: block;
        height: 100%;
        position: absolute;
        right: 100%;
        width:.5em
    }

    .wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon {
        margin-right:.25em
    }

    .wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon svg {
        transform:rotate(-90deg)
    }
}

.wp-block-navigation .has-child:not(.open-on-click):hover > .wp-block-navigation__submenu-container {
    height: auto;
    min-width: 200px;
    opacity: 1;
    overflow: visible;
    visibility: visible;
    width:auto
}

.wp-block-navigation .has-child:not(.open-on-click):not(.open-on-hover-click):focus-within > .wp-block-navigation__submenu-container {
    height: auto;
    min-width: 200px;
    opacity: 1;
    overflow: visible;
    visibility: visible;
    width:auto
}

.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true] ~ .wp-block-navigation__submenu-container {
    height: auto;
    min-width: 200px;
    opacity: 1;
    overflow: visible;
    visibility: visible;
    width:auto
}

.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container {
    left: 0;
    top:100%
}

@media (min-width: 782px) {
    .wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
        left: 100%;
        top:0
    }
}

.wp-block-navigation-submenu {
    display: flex;
    position:relative
}

.wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg {
    stroke:currentColor
}

button.wp-block-navigation-item__content {
    background-color: transparent;
    border: none;
    color: currentColor;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-align: left;
    text-transform:inherit
}

.wp-block-navigation-submenu__toggle {
    cursor:pointer
}

.wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle {
    padding-right:.85em
}

.wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle + .wp-block-navigation__submenu-icon {
    margin-left: -.6em;
    pointer-events:none
}

.wp-block-navigation .wp-block-page-list, .wp-block-navigation__container, .wp-block-navigation__responsive-close, .wp-block-navigation__responsive-container, .wp-block-navigation__responsive-container-content, .wp-block-navigation__responsive-dialog {
    gap:inherit
}

:where(.wp-block-navigation.has-background .wp-block-navigation-item a:not(.wp-element-button)), :where(.wp-block-navigation.has-background .wp-block-navigation-submenu a:not(.wp-element-button)) {
    padding:.5em 1em
}

:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:not(.wp-element-button)), :where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu a:not(.wp-element-button)), :where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu button.wp-block-navigation-item__content), :where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-pages-list__item button.wp-block-navigation-item__content) {
    padding:.5em 1em
}

.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container {
    left: auto;
    right:0
}

.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
    left: -1px;
    right:-1px
}

@media (min-width: 782px) {
    .wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
        left: auto;
        right:100%
    }
}

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, .15);
    color:#000
}

.wp-block-navigation__container {
    align-items: var(--navigation-layout-align, initial);
    display: flex;
    flex-direction: var(--navigation-layout-direction, initial);
    flex-wrap: var(--navigation-layout-wrap, wrap);
    justify-content: var(--navigation-layout-justify, initial);
    list-style: none;
    margin: 0;
    padding-left:0
}

.wp-block-navigation__container .is-responsive {
    display:none
}

.wp-block-navigation__container:only-child, .wp-block-page-list:only-child {
    flex-grow:1
}

@keyframes overlay-menu__fade-in-animation {
    0% {
        opacity: 0;
        transform:translateY(.5em)
    }

    to {
        opacity: 1;
        transform:translateY(0)
    }
}

.wp-block-navigation__responsive-container {
    bottom: 0;
    display: none;
    left: 0;
    position: fixed;
    right: 0;
    top:0
}

.wp-block-navigation__responsive-container .wp-block-navigation-link a {
    color:inherit
}

.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
    align-items: var(--navigation-layout-align, initial);
    display: flex;
    flex-direction: var(--navigation-layout-direction, initial);
    flex-wrap: var(--navigation-layout-wrap, wrap);
    justify-content:var(--navigation-layout-justify, initial)
}

.wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open) {
    background-color: inherit !important;
    color:inherit !important
}

.wp-block-navigation__responsive-container.is-menu-open {
    animation: overlay-menu__fade-in-animation .1s ease-out;
    animation-fill-mode: forwards;
    background-color: inherit;
    display: flex;
    flex-direction: column;
    overflow: auto;
    padding: var(--wp--style--root--padding-top, 2rem) var(--wp--style--root--padding-right, 2rem) var(--wp--style--root--padding-bottom, 2rem) var(--wp--style--root--padding-left, 2rem);
    z-index:100000
}

@media (prefers-reduced-motion: reduce) {
    .wp-block-navigation__responsive-container.is-menu-open {
        animation-delay: 0s;
        animation-duration:1ms
    }
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    align-items: var(--navigation-layout-justification-setting, inherit);
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    overflow: visible;
    padding-top:calc(2rem + 24px)
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list {
    justify-content:flex-start
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
    display:none
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
    border: none;
    height: auto;
    min-width: 200px;
    opacity: 1;
    overflow: initial;
    padding-left: 2rem;
    padding-right: 2rem;
    position: static;
    visibility: visible;
    width:auto
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
    gap:inherit
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
    padding-top:var(--wp--style--block-gap, 2em)
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
    padding:0
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list {
    align-items: var(--navigation-layout-justification-setting, initial);
    display: flex;
    flex-direction:column
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list {
    background: transparent !important;
    color:inherit !important
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
    left: auto;
    right:auto
}

@media (min-width: 600px) {
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        background-color: inherit;
        display: block;
        position: relative;
        width: 100%;
        z-index:auto
    }

    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close {
        display:none
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
        left:0
    }
}

.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
    background-color: #fff;
    color:#000
}

.wp-block-navigation__toggle_button_label {
    font-size: 1rem;
    font-weight:700
}

.wp-block-navigation__responsive-container-close, .wp-block-navigation__responsive-container-open {
    background: transparent;
    border: none;
    color: currentColor;
    cursor: pointer;
    margin: 0;
    padding: 0;
    text-transform: inherit;
    vertical-align:middle
}

.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
    fill: currentColor;
    display: block;
    height: 24px;
    pointer-events: none;
    width:24px
}

.wp-block-navigation__responsive-container-open {
    display:flex
}

.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open {
    font-family: inherit;
    font-size: inherit;
    font-weight:inherit
}

@media (min-width: 600px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display:none
    }
}

.wp-block-navigation__responsive-container-close {
    position: absolute;
    right: 0;
    top: 0;
    z-index:2
}

.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close {
    font-family: inherit;
    font-size: inherit;
    font-weight:inherit
}

.wp-block-navigation__responsive-close {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--wp--style--global--wide-size, 100%);
    width:100%
}

.wp-block-navigation__responsive-close:focus {
    outline:none
}

.is-menu-open .wp-block-navigation__responsive-close, .is-menu-open .wp-block-navigation__responsive-container-content, .is-menu-open .wp-block-navigation__responsive-dialog {
    box-sizing:border-box
}

.wp-block-navigation__responsive-dialog {
    position:relative
}

.has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog {
    margin-top:46px
}

@media (min-width: 782px) {
    .has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog {
        margin-top:32px
    }
}

html.has-modal-open {
    overflow:hidden
}

.wp-block-navigation .wp-block-navigation-item__label {
    overflow-wrap: break-word;
    word-break:normal
}

.wp-block-navigation .wp-block-navigation-item__description {
    display:none
}

.wp-block-navigation .wp-block-page-list {
    align-items: var(--navigation-layout-align, initial);
    background-color: inherit;
    display: flex;
    flex-direction: var(--navigation-layout-direction, initial);
    flex-wrap: var(--navigation-layout-wrap, wrap);
    justify-content:var(--navigation-layout-justify, initial)
}

.wp-block-navigation .wp-block-navigation-item {
    background-color:inherit
}

.is-small-text {
    font-size:.875em
}

.is-regular-text {
    font-size:1em
}

.is-large-text {
    font-size:2.25em
}

.is-larger-text {
    font-size:3em
}

.has-drop-cap:not(:focus):first-letter {
    float: left;
    font-size: 8.4em;
    font-style: normal;
    font-weight: 100;
    line-height: .68;
    margin: .05em .1em 0 0;
    text-transform:uppercase
}

body.rtl .has-drop-cap:not(:focus):first-letter {
    float: none;
    margin-left:.1em
}

p.has-drop-cap.has-background {
    overflow:hidden
}

p.has-background {
    padding:1.25em 2.375em
}

:where(p.has-text-color:not(.has-link-color)) a {
    color:inherit
}

.wp-block-post-author {
    display: flex;
    flex-wrap:wrap
}

.wp-block-post-author__byline {
    font-size: .5em;
    margin-bottom: 0;
    margin-top: 0;
    width:100%
}

.wp-block-post-author__avatar {
    margin-right:1em
}

.wp-block-post-author__bio {
    font-size: .7em;
    margin-bottom:.7em
}

.wp-block-post-author__content {
    flex-basis: 0;
    flex-grow:1
}

.wp-block-post-author__name {
    margin:0
}

.wp-block-post-comments-form {
    box-sizing:border-box
}

.wp-block-post-comments-form[style * =font-weight] :where(.comment-reply-title) {
    font-weight:inherit
}

.wp-block-post-comments-form[style * =font-family] :where(.comment-reply-title) {
    font-family:inherit
}

.wp-block-post-comments-form[class * =-font-size] :where(.comment-reply-title), .wp-block-post-comments-form[style * =font-size] :where(.comment-reply-title) {
    font-size:inherit
}

.wp-block-post-comments-form[style * =line-height] :where(.comment-reply-title) {
    line-height:inherit
}

.wp-block-post-comments-form[style * =font-style] :where(.comment-reply-title) {
    font-style:inherit
}

.wp-block-post-comments-form[style * =letter-spacing] :where(.comment-reply-title) {
    letter-spacing:inherit
}

.wp-block-post-comments-form input[type=submit] {
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    overflow-wrap: break-word;
    text-align:center
}

.wp-block-post-comments-form input:not([type=submit]), .wp-block-post-comments-form textarea {
    border: 1px solid #949494;
    font-family: inherit;
    font-size:1em
}

.wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]), .wp-block-post-comments-form textarea {
    padding:calc(.667em + 2px)
}

.wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]), .wp-block-post-comments-form .comment-form textarea {
    box-sizing: border-box;
    display: block;
    width:100%
}

.wp-block-post-comments-form .comment-form-author label, .wp-block-post-comments-form .comment-form-email label, .wp-block-post-comments-form .comment-form-url label {
    display: block;
    margin-bottom:.25em
}

.wp-block-post-comments-form .comment-form-cookies-consent {
    display: flex;
    gap:.25em
}

.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent {
    margin-top:.35em
}

.wp-block-post-comments-form .comment-reply-title {
    margin-bottom:0
}

.wp-block-post-comments-form .comment-reply-title :where(small) {
    font-size: var(--wp--preset--font-size--medium, smaller);
    margin-left:.5em
}

.wp-block-post-date {
    box-sizing:border-box
}

.wp-block-post-excerpt {
    margin-bottom: var(--wp--style--block-gap);
    margin-top:var(--wp--style--block-gap)
}

.wp-block-post-excerpt__excerpt {
    margin-bottom: 0;
    margin-top:0
}

.wp-block-post-excerpt__more-text {
    margin-bottom: 0;
    margin-top:var(--wp--style--block-gap)
}

.wp-block-post-excerpt__more-link {
    display:inline-block
}

.wp-block-post-featured-image {
    margin-left: 0;
    margin-right:0
}

.wp-block-post-featured-image a {
    display:block
}

.wp-block-post-featured-image img {
    box-sizing: border-box;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
    width:100%
}

.wp-block-post-featured-image.alignfull img, .wp-block-post-featured-image.alignwide img {
    width:100%
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim {
    background-color: #000;
    inset: 0;
    position:absolute
}

.wp-block-post-featured-image {
    position:relative
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-gradient {
    background-color:transparent
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-0 {
    opacity:0
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-10 {
    opacity:.1
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-20 {
    opacity:.2
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-30 {
    opacity:.3
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-40 {
    opacity:.4
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-50 {
    opacity:.5
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-60 {
    opacity:.6
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-70 {
    opacity:.7
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-80 {
    opacity:.8
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-90 {
    opacity:.9
}

.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-100 {
    opacity:1
}

.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous {
    display: inline-block;
    margin-right:1ch
}

.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous:not(.is-arrow-chevron) {
    transform:scaleX(1)
}

.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next {
    display: inline-block;
    margin-left:1ch
}

.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next:not(.is-arrow-chevron) {
    transform:scaleX(1)
}

.wp-block-post-terms {
    box-sizing:border-box
}

.wp-block-post-terms .wp-block-post-terms__separator {
    white-space:pre-wrap
}

.wp-block-post-title {
    box-sizing: border-box;
    word-break:break-word
}

.wp-block-post-title a {
    display:inline-block
}

.wp-block-preformatted {
    white-space:pre-wrap
}

.wp-block-preformatted.has-background {
    padding:1.25em 2.375em
}

.wp-block-pullquote {
    box-sizing: border-box;
    margin: 0 0 1em;
    overflow-wrap: break-word;
    padding: 3em 0;
    text-align:center
}

.wp-block-pullquote blockquote, .wp-block-pullquote cite, .wp-block-pullquote p {
    color:inherit
}

.wp-block-pullquote.alignleft, .wp-block-pullquote.alignright {
    max-width:420px
}

.wp-block-pullquote cite, .wp-block-pullquote footer {
    position:relative
}

.wp-block-pullquote .has-text-color a {
    color:inherit
}

.wp-block-pullquote.has-text-align-left blockquote {
    text-align:left
}

.wp-block-pullquote.has-text-align-right blockquote {
    text-align:right
}

.wp-block-pullquote.is-style-solid-color {
    border:none
}

.wp-block-pullquote.is-style-solid-color blockquote {
    margin-left: auto;
    margin-right: auto;
    max-width:60%
}

.wp-block-pullquote.is-style-solid-color blockquote p {
    font-size: 2em;
    margin-bottom: 0;
    margin-top:0
}

.wp-block-pullquote.is-style-solid-color blockquote cite {
    font-style: normal;
    text-transform:none
}

.wp-block-pullquote cite {
    color:inherit
}

.wp-block-post-template {
    list-style: none;
    margin-bottom: 0;
    margin-top: 0;
    max-width: 100%;
    padding:0
}

.wp-block-post-template.wp-block-post-template {
    background:none
}

.wp-block-post-template.is-flex-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap:1.25em
}

.wp-block-post-template.is-flex-container li {
    margin: 0;
    width:100%
}

@media (min-width: 600px) {
    .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li {
        width:calc(50% - .625em)
    }

    .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li {
        width:calc(33.33333% - .83333em)
    }

    .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li {
        width:calc(25% - .9375em)
    }

    .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li {
        width:calc(20% - 1em)
    }

    .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li {
        width:calc(16.66667% - 1.04167em)
    }
}

.wp-block-query-pagination > .wp-block-query-pagination-next, .wp-block-query-pagination > .wp-block-query-pagination-numbers, .wp-block-query-pagination > .wp-block-query-pagination-previous {
    margin-bottom: .5em;
    margin-right:.5em
}

.wp-block-query-pagination > .wp-block-query-pagination-next:last-child, .wp-block-query-pagination > .wp-block-query-pagination-numbers:last-child, .wp-block-query-pagination > .wp-block-query-pagination-previous:last-child {
    margin-right:0
}

.wp-block-query-pagination.is-content-justification-space-between > .wp-block-query-pagination-next:last-of-type {
    margin-inline-start:auto
}

.wp-block-query-pagination.is-content-justification-space-between > .wp-block-query-pagination-previous:first-child {
    margin-inline-end:auto
}

.wp-block-query-pagination .wp-block-query-pagination-previous-arrow {
    display: inline-block;
    margin-right:1ch
}

.wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron) {
    transform:scaleX(1)
}

.wp-block-query-pagination .wp-block-query-pagination-next-arrow {
    display: inline-block;
    margin-left:1ch
}

.wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron) {
    transform:scaleX(1)
}

.wp-block-query-pagination.aligncenter {
    justify-content:center
}

.wp-block-query-title, .wp-block-quote {
    box-sizing:border-box
}

.wp-block-quote {
    overflow-wrap:break-word
}

.wp-block-quote.is-large:where(:not(.is-style-plain)), .wp-block-quote.is-style-large:where(:not(.is-style-plain)) {
    margin-bottom: 1em;
    padding:0 1em
}

.wp-block-quote.is-large:where(:not(.is-style-plain)) p, .wp-block-quote.is-style-large:where(:not(.is-style-plain)) p {
    font-size: 1.5em;
    font-style: italic;
    line-height:1.6
}

.wp-block-quote.is-large:where(:not(.is-style-plain)) cite, .wp-block-quote.is-large:where(:not(.is-style-plain)) footer, .wp-block-quote.is-style-large:where(:not(.is-style-plain)) cite, .wp-block-quote.is-style-large:where(:not(.is-style-plain)) footer {
    font-size: 1.125em;
    text-align:right
}

.wp-block-read-more {
    display: block;
    width: -moz-fit-content;
    width:fit-content
}

.wp-block-read-more:not([style * =text-decoration]), .wp-block-read-more:not([style * =text-decoration]):active, .wp-block-read-more:not([style * =text-decoration]):focus {
    text-decoration:none
}

ul.wp-block-rss {
    list-style: none;
    padding:0
}

ul.wp-block-rss.wp-block-rss {
    box-sizing:border-box
}

ul.wp-block-rss.alignleft {
    margin-right:2em
}

ul.wp-block-rss.alignright {
    margin-left:2em
}

ul.wp-block-rss.is-grid {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding:0
}

ul.wp-block-rss.is-grid li {
    margin: 0 1em 1em 0;
    width:100%
}

@media (min-width: 600px) {
    ul.wp-block-rss.columns-2 li {
        width:calc(50% - 1em)
    }

    ul.wp-block-rss.columns-3 li {
        width:calc(33.33333% - 1em)
    }

    ul.wp-block-rss.columns-4 li {
        width:calc(25% - 1em)
    }

    ul.wp-block-rss.columns-5 li {
        width:calc(20% - 1em)
    }

    ul.wp-block-rss.columns-6 li {
        width:calc(16.66667% - 1em)
    }
}

.wp-block-rss__item-author, .wp-block-rss__item-publish-date {
    display: block;
    font-size:.8125em
}

.wp-block-search__button {
    margin-left: .625em;
    word-break:normal
}

.wp-block-search__button.has-icon {
    line-height:0
}

.wp-block-search__button svg {
    fill: currentColor;
    min-height: 1.5em;
    min-width: 1.5em;
    vertical-align:text-bottom
}

:where(.wp-block-search__button) {
    border: 1px solid #ccc;
    padding:.375em .625em
}

.wp-block-search__inside-wrapper {
    display: flex;
    flex: auto;
    flex-wrap: nowrap;
    max-width:100%
}

.wp-block-search__label {
    width:100%
}

.wp-block-search__input {
    border: 1px solid #949494;
    flex-grow: 1;
    margin-left: 0;
    margin-right: 0;
    min-width: 3em;
    padding: 8px;
    text-decoration:unset !important
}

.wp-block-search.wp-block-search__button-only .wp-block-search__button {
    margin-left:0
}

:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
    border: 1px solid #949494;
    padding:4px
}

:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input {
    border: none;
    border-radius: 0;
    padding:0 0 0 .25em
}

:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input:focus {
    outline:none
}

:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button) {
    padding:.125em .5em
}

.wp-block-search.aligncenter .wp-block-search__inside-wrapper {
    margin:auto
}

.wp-block-separator {
    border: 1px solid;
    border-left: none;
    border-right:none
}

.wp-block-separator.is-style-dots {
    background: none !important;
    border: none;
    height: auto;
    line-height: 1;
    text-align:center
}

.wp-block-separator.is-style-dots:before {
    color: currentColor;
    content: "···";
    font-family: serif;
    font-size: 1.5em;
    letter-spacing: 2em;
    padding-left:2em
}

.wp-block-site-logo {
    box-sizing: border-box;
    line-height:0
}

.wp-block-site-logo a {
    display:inline-block
}

.wp-block-site-logo.is-default-size img {
    height: auto;
    width:120px
}

.wp-block-site-logo img {
    height: auto;
    max-width:100%
}

.wp-block-site-logo a, .wp-block-site-logo img {
    border-radius:inherit
}

.wp-block-site-logo.aligncenter {
    margin-left: auto;
    margin-right: auto;
    text-align:center
}

.wp-block-site-logo.is-style-rounded {
    border-radius:9999px
}

.wp-block-site-title a {
    color:inherit
}

.wp-block-social-links {
    background: none;
    box-sizing: border-box;
    margin-left: 0;
    padding-left: 0;
    padding-right: 0;
    text-indent:0
}

.wp-block-social-links .wp-social-link a, .wp-block-social-links .wp-social-link a:hover {
    border-bottom: 0;
    box-shadow: none;
    text-decoration:none
}

.wp-block-social-links .wp-social-link a {
    padding:.25em
}

.wp-block-social-links .wp-social-link svg {
    height: 1em;
    width:1em
}

.wp-block-social-links .wp-social-link span:not(.screen-reader-text) {
    font-size: .65em;
    margin-left: .5em;
    margin-right:.5em
}

.wp-block-social-links.has-small-icon-size {
    font-size:16px
}

.wp-block-social-links, .wp-block-social-links.has-normal-icon-size {
    font-size:24px
}

.wp-block-social-links.has-large-icon-size {
    font-size:36px
}

.wp-block-social-links.has-huge-icon-size {
    font-size:48px
}

.wp-block-social-links.aligncenter {
    display: flex;
    justify-content:center
}

.wp-block-social-links.alignright {
    justify-content:flex-end
}

.wp-block-social-link {
    border-radius: 9999px;
    display: block;
    height: auto;
    transition:transform .1s ease
}

@media (prefers-reduced-motion: reduce) {
    .wp-block-social-link {
        transition-delay: 0s;
        transition-duration:0s
    }
}

.wp-block-social-link a {
    align-items: center;
    display: flex;
    line-height: 0;
    transition:transform .1s ease
}

.wp-block-social-link:hover {
    transform:scale(1.1)
}

.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:active, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:hover, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:visited {
    fill: currentColor;
    color:currentColor
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link {
    background-color: #f0f0f0;
    color:#444
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon {
    background-color: #f90;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp {
    background-color: #1ea0c3;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance {
    background-color: #0757fe;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen {
    background-color: #1e1f26;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart {
    background-color: #02e49b;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble {
    background-color: #e94c89;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox {
    background-color: #4280ff;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy {
    background-color: #f45800;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook {
    background-color: #1778f2;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx {
    background-color: #000;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr {
    background-color: #0461dd;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare {
    background-color: #e65678;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github {
    background-color: #24292d;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads {
    background-color: #eceadd;
    color:#382110
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google {
    background-color: #ea4434;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram {
    background-color: #f00075;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm {
    background-color: #e21b24;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin {
    background-color: #0d66c2;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon {
    background-color: #3288d4;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium {
    background-color: #02ab6c;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup {
    background-color: #f6405f;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-patreon {
    background-color: #ff424d;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest {
    background-color: #e60122;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket {
    background-color: #ef4155;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit {
    background-color: #ff4500;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype {
    background-color: #0478d7;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat {
    stroke: #000;
    background-color: #fefc00;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud {
    background-color: #ff5600;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify {
    background-color: #1bd760;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-telegram {
    background-color: #2aabee;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tiktok {
    background-color: #000;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr {
    background-color: #011835;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch {
    background-color: #6440a4;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter {
    background-color: #1da1f2;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo {
    background-color: #1eb7ea;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk {
    background-color: #4680c2;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress {
    background-color: #3499cd;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-whatsapp {
    background-color: #25d366;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp {
    background-color: #d32422;
    color:#fff
}

.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube {
    background-color: red;
    color:#fff
}

.wp-block-social-links.is-style-logos-only .wp-social-link {
    background:none
}

.wp-block-social-links.is-style-logos-only .wp-social-link a {
    padding:0
}

.wp-block-social-links.is-style-logos-only .wp-social-link svg {
    height: 1.25em;
    width:1.25em
}

.wp-block-social-links.is-style-logos-only .wp-social-link-amazon {
    color:#f90
}

.wp-block-social-links.is-style-logos-only .wp-social-link-bandcamp {
    color:#1ea0c3
}

.wp-block-social-links.is-style-logos-only .wp-social-link-behance {
    color:#0757fe
}

.wp-block-social-links.is-style-logos-only .wp-social-link-codepen {
    color:#1e1f26
}

.wp-block-social-links.is-style-logos-only .wp-social-link-deviantart {
    color:#02e49b
}

.wp-block-social-links.is-style-logos-only .wp-social-link-dribbble {
    color:#e94c89
}

.wp-block-social-links.is-style-logos-only .wp-social-link-dropbox {
    color:#4280ff
}

.wp-block-social-links.is-style-logos-only .wp-social-link-etsy {
    color:#f45800
}

.wp-block-social-links.is-style-logos-only .wp-social-link-facebook {
    color:#1778f2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-fivehundredpx {
    color:#000
}

.wp-block-social-links.is-style-logos-only .wp-social-link-flickr {
    color:#0461dd
}

.wp-block-social-links.is-style-logos-only .wp-social-link-foursquare {
    color:#e65678
}

.wp-block-social-links.is-style-logos-only .wp-social-link-github {
    color:#24292d
}

.wp-block-social-links.is-style-logos-only .wp-social-link-goodreads {
    color:#382110
}

.wp-block-social-links.is-style-logos-only .wp-social-link-google {
    color:#ea4434
}

.wp-block-social-links.is-style-logos-only .wp-social-link-instagram {
    color:#f00075
}

.wp-block-social-links.is-style-logos-only .wp-social-link-lastfm {
    color:#e21b24
}

.wp-block-social-links.is-style-logos-only .wp-social-link-linkedin {
    color:#0d66c2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-mastodon {
    color:#3288d4
}

.wp-block-social-links.is-style-logos-only .wp-social-link-medium {
    color:#02ab6c
}

.wp-block-social-links.is-style-logos-only .wp-social-link-meetup {
    color:#f6405f
}

.wp-block-social-links.is-style-logos-only .wp-social-link-patreon {
    color:#ff424d
}

.wp-block-social-links.is-style-logos-only .wp-social-link-pinterest {
    color:#e60122
}

.wp-block-social-links.is-style-logos-only .wp-social-link-pocket {
    color:#ef4155
}

.wp-block-social-links.is-style-logos-only .wp-social-link-reddit {
    color:#ff4500
}

.wp-block-social-links.is-style-logos-only .wp-social-link-skype {
    color:#0478d7
}

.wp-block-social-links.is-style-logos-only .wp-social-link-snapchat {
    stroke: #000;
    color:#fff
}

.wp-block-social-links.is-style-logos-only .wp-social-link-soundcloud {
    color:#ff5600
}

.wp-block-social-links.is-style-logos-only .wp-social-link-spotify {
    color:#1bd760
}

.wp-block-social-links.is-style-logos-only .wp-social-link-telegram {
    color:#2aabee
}

.wp-block-social-links.is-style-logos-only .wp-social-link-tiktok {
    color:#000
}

.wp-block-social-links.is-style-logos-only .wp-social-link-tumblr {
    color:#011835
}

.wp-block-social-links.is-style-logos-only .wp-social-link-twitch {
    color:#6440a4
}

.wp-block-social-links.is-style-logos-only .wp-social-link-twitter {
    color:#1da1f2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-vimeo {
    color:#1eb7ea
}

.wp-block-social-links.is-style-logos-only .wp-social-link-vk {
    color:#4680c2
}

.wp-block-social-links.is-style-logos-only .wp-social-link-whatsapp {
    color:#25d366
}

.wp-block-social-links.is-style-logos-only .wp-social-link-wordpress {
    color:#3499cd
}

.wp-block-social-links.is-style-logos-only .wp-social-link-yelp {
    color:#d32422
}

.wp-block-social-links.is-style-logos-only .wp-social-link-youtube {
    color:red
}

.wp-block-social-links.is-style-pill-shape .wp-social-link {
    width:auto
}

.wp-block-social-links.is-style-pill-shape .wp-social-link a {
    padding-left: .66667em;
    padding-right:.66667em
}

.wp-block-spacer {
    clear:both
}

.wp-block-tag-cloud {
    box-sizing:border-box
}

.wp-block-tag-cloud.aligncenter {
    justify-content: center;
    text-align:center
}

.wp-block-tag-cloud.alignfull {
    padding-left: 1em;
    padding-right:1em
}

.wp-block-tag-cloud a {
    display: inline-block;
    margin-right:5px
}

.wp-block-tag-cloud span {
    display: inline-block;
    margin-left: 5px;
    text-decoration:none
}

.wp-block-tag-cloud.is-style-outline {
    display: flex;
    flex-wrap: wrap;
    gap:1ch
}

.wp-block-tag-cloud.is-style-outline a {
    border: 1px solid;
    font-size: unset !important;
    margin-right: 0;
    padding: 1ch 2ch;
    text-decoration:none !important
}

.wp-block-table {
    overflow-x:auto
}

.wp-block-table table {
    border-collapse: collapse;
    width:100%
}

.wp-block-table thead {
    border-bottom:3px solid
}

.wp-block-table tfoot {
    border-top:3px solid
}

.wp-block-table td, .wp-block-table th {
    border: 1px solid;
    padding:.5em
}

.wp-block-table .has-fixed-layout {
    table-layout: fixed;
    width:100%
}

.wp-block-table .has-fixed-layout td, .wp-block-table .has-fixed-layout th {
    word-break:break-word
}

.wp-block-table.aligncenter, .wp-block-table.alignleft, .wp-block-table.alignright {
    display: table;
    width:auto
}

.wp-block-table.aligncenter td, .wp-block-table.aligncenter th, .wp-block-table.alignleft td, .wp-block-table.alignleft th, .wp-block-table.alignright td, .wp-block-table.alignright th {
    word-break:break-word
}

.wp-block-table .has-subtle-light-gray-background-color {
    background-color:#f3f4f5
}

.wp-block-table .has-subtle-pale-green-background-color {
    background-color:#e9fbe5
}

.wp-block-table .has-subtle-pale-blue-background-color {
    background-color:#e7f5fe
}

.wp-block-table .has-subtle-pale-pink-background-color {
    background-color:#fcf0ef
}

.wp-block-table.is-style-stripes {
    background-color: transparent;
    border-bottom: 1px solid #f0f0f0;
    border-collapse: inherit;
    border-spacing:0
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color:#f0f0f0
}

.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd) {
    background-color:#f3f4f5
}

.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd) {
    background-color:#e9fbe5
}

.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd) {
    background-color:#e7f5fe
}

.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd) {
    background-color:#fcf0ef
}

.wp-block-table.is-style-stripes td, .wp-block-table.is-style-stripes th {
    border-color:transparent
}

.wp-block-table .has-border-color td, .wp-block-table .has-border-color th, .wp-block-table .has-border-color tr, .wp-block-table .has-border-color > * {
    border-color:inherit
}

.wp-block-table table[style * =border-top-color] tr:first-child, .wp-block-table table[style * =border-top-color] tr:first-child td, .wp-block-table table[style * =border-top-color] tr:first-child th, .wp-block-table table[style * =border-top-color] > *, .wp-block-table table[style * =border-top-color] > * td, .wp-block-table table[style * =border-top-color] > * th {
    border-top-color:inherit
}

.wp-block-table table[style * =border-top-color] tr:not(:first-child) {
    border-top-color:currentColor
}

.wp-block-table table[style * =border-right-color] td:last-child, .wp-block-table table[style * =border-right-color] th, .wp-block-table table[style * =border-right-color] tr, .wp-block-table table[style * =border-right-color] > * {
    border-right-color:inherit
}

.wp-block-table table[style * =border-bottom-color] tr:last-child, .wp-block-table table[style * =border-bottom-color] tr:last-child td, .wp-block-table table[style * =border-bottom-color] tr:last-child th, .wp-block-table table[style * =border-bottom-color] > *, .wp-block-table table[style * =border-bottom-color] > * td, .wp-block-table table[style * =border-bottom-color] > * th {
    border-bottom-color:inherit
}

.wp-block-table table[style * =border-bottom-color] tr:not(:last-child) {
    border-bottom-color:currentColor
}

.wp-block-table table[style * =border-left-color] td:first-child, .wp-block-table table[style * =border-left-color] th, .wp-block-table table[style * =border-left-color] tr, .wp-block-table table[style * =border-left-color] > * {
    border-left-color:inherit
}

.wp-block-table table[style * =border-style] td, .wp-block-table table[style * =border-style] th, .wp-block-table table[style * =border-style] tr, .wp-block-table table[style * =border-style] > * {
    border-style:inherit
}

.wp-block-table table[style * =border-width] td, .wp-block-table table[style * =border-width] th, .wp-block-table table[style * =border-width] tr, .wp-block-table table[style * =border-width] > * {
    border-style: inherit;
    border-width:inherit
}

.wp-block-text-columns, .wp-block-text-columns.aligncenter {
    display:flex
}

.wp-block-text-columns .wp-block-column {
    margin: 0 1em;
    padding:0
}

.wp-block-text-columns .wp-block-column:first-child {
    margin-left:0
}

.wp-block-text-columns .wp-block-column:last-child {
    margin-right:0
}

.wp-block-text-columns.columns-2 .wp-block-column {
    width:50%
}

.wp-block-text-columns.columns-3 .wp-block-column {
    width:33.33333%
}

.wp-block-text-columns.columns-4 .wp-block-column {
    width:25%
}

pre.wp-block-verse {
    overflow: auto;
    white-space:pre-wrap
}

:where(pre.wp-block-verse) {
    font-family:inherit
}

.wp-block-video {
    box-sizing:border-box
}

.wp-block-video video {
    width:100%
}

@supports (position: sticky) {
    .wp-block-video [poster] {
        -o-object-fit: cover;
        object-fit:cover
    }
}

.wp-block-video.aligncenter {
    text-align:center
}

.wp-block-video figcaption {
    margin-bottom: 1em;
    margin-top:.5em
}

.wp-element-button {
    cursor:pointer
}

:root {
    --wp--preset--font-size--normal: 16px;
    --wp--preset--font-size--huge:42px
}

:root .has-very-light-gray-background-color {
    background-color:#eee
}

:root .has-very-dark-gray-background-color {
    background-color:#313131
}

:root .has-very-light-gray-color {
    color:#eee
}

:root .has-very-dark-gray-color {
    color:#313131
}

:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background {
    background:linear-gradient(135deg, #00d084, #0693e3)
}

:root .has-purple-crush-gradient-background {
    background:linear-gradient(135deg, #34e2e4, #4721fb 50%, #ab1dfe)
}

:root .has-hazy-dawn-gradient-background {
    background:linear-gradient(135deg, #faaca8, #dad0ec)
}

:root .has-subdued-olive-gradient-background {
    background:linear-gradient(135deg, #fafae1, #67a671)
}

:root .has-atomic-cream-gradient-background {
    background:linear-gradient(135deg, #fdd79a, #004a59)
}

:root .has-nightshade-gradient-background {
    background:linear-gradient(135deg, #330968, #31cdcf)
}

:root .has-midnight-gradient-background {
    background:linear-gradient(135deg, #020381, #2874fc)
}

.has-regular-font-size {
    font-size:1em
}

.has-larger-font-size {
    font-size:2.625em
}

.has-normal-font-size {
    font-size:var(--wp--preset--font-size--normal)
}

.has-huge-font-size {
    font-size:var(--wp--preset--font-size--huge)
}

.has-text-align-center {
    text-align:center
}

.has-text-align-left {
    text-align:left
}

.has-text-align-right {
    text-align:right
}

#end-resizable-editor-section {
    display:none
}

.aligncenter {
    clear:both
}

.items-justified-left {
    justify-content:flex-start
}

.items-justified-center {
    justify-content:center
}

.items-justified-right {
    justify-content:flex-end
}

.items-justified-space-between {
    justify-content:space-between
}

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    word-wrap: normal !important;
    border: 0;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width:1px
}

.screen-reader-text:focus {
    clip: auto !important;
    background-color: #ddd;
    -webkit-clip-path: none;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index:100000
}

html :where(.has-border-color) {
    border-style:solid
}

html :where([style * =border-top-color]) {
    border-top-style:solid
}

html :where([style * =border-right-color]) {
    border-right-style:solid
}

html :where([style * =border-bottom-color]) {
    border-bottom-style:solid
}

html :where([style * =border-left-color]) {
    border-left-style:solid
}

html :where([style * =border-width]) {
    border-style:solid
}

html :where([style * =border-top-width]) {
    border-top-style:solid
}

html :where([style * =border-right-width]) {
    border-right-style:solid
}

html :where([style * =border-bottom-width]) {
    border-bottom-style:solid
}

html :where([style * =border-left-width]) {
    border-left-style:solid
}

html :where(img[class * =wp-image-]) {
    height: auto;
    max-width:100%
}

figure {
    margin:0 0 1em
}

html :where(.is-position-sticky) {
    --wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height, 0px)
}

@media screen and (max-width: 600px) {
    html :where(.is-position-sticky) {
        --wp-admin--admin-bar--position-offset:0px
    }
}

.wp-block-button__link {
    color: #fff;
    background-color: #32373c;
    border-radius: 9999px;
    box-shadow: none;
    text-decoration: none;
    padding: calc(.667em + 2px) calc(1.333em + 2px);
    font-size:1.125em
}

.wp-block-file__button {
    background: #32373c;
    color: #fff;
    text-decoration:none
}

body {
    --wp--preset--color--black: #000;
    --wp--preset--color--cyan-bluish-gray: #abb8c3;
    --wp--preset--color--white: #fff;
    --wp--preset--color--pale-pink: #f78da7;
    --wp--preset--color--vivid-red: #cf2e2e;
    --wp--preset--color--luminous-vivid-orange: #ff6900;
    --wp--preset--color--luminous-vivid-amber: #fcb900;
    --wp--preset--color--light-green-cyan: #7bdcb5;
    --wp--preset--color--vivid-green-cyan: #00d084;
    --wp--preset--color--pale-cyan-blue: #8ed1fc;
    --wp--preset--color--vivid-cyan-blue: #0693e3;
    --wp--preset--color--vivid-purple: #9b51e0;
    --wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg, rgba(6, 147, 227, 1) 0%, #9b51e0 100%);
    --wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg, #7adcb4 0%, #00d082 100%);
    --wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg, rgba(252, 185, 0, 1) 0%, rgba(255, 105, 0, 1) 100%);
    --wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg, rgba(255, 105, 0, 1) 0%, #cf2e2e 100%);
    --wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg, #eee 0%, #a9b8c3 100%);
    --wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg, #4aeadc 0%, #9778d1 20%, #cf2aba 40%, #ee2c82 60%, #fb6962 80%, #fef84c 100%);
    --wp--preset--gradient--blush-light-purple: linear-gradient(135deg, #ffceec 0%, #9896f0 100%);
    --wp--preset--gradient--blush-bordeaux: linear-gradient(135deg, #fecda5 0%, #fe2d2d 50%, #6b003e 100%);
    --wp--preset--gradient--luminous-dusk: linear-gradient(135deg, #ffcb70 0%, #c751c0 50%, #4158d0 100%);
    --wp--preset--gradient--pale-ocean: linear-gradient(135deg, #fff5cb 0%, #b6e3d4 50%, #33a7b5 100%);
    --wp--preset--gradient--electric-grass: linear-gradient(135deg, #caf880 0%, #71ce7e 100%);
    --wp--preset--gradient--midnight: linear-gradient(135deg, #020381 0%, #2874fc 100%);
    --wp--preset--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');
    --wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');
    --wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');
    --wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');
    --wp--preset--duotone--midnight: url('#wp-duotone-midnight');
    --wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');
    --wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');
    --wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');
    --wp--preset--font-size--small: 13px;
    --wp--preset--font-size--medium: 20px;
    --wp--preset--font-size--large: 36px;
    --wp--preset--font-size--x-large: 42px;
    --wp--preset--spacing--20: .44rem;
    --wp--preset--spacing--30: .67rem;
    --wp--preset--spacing--40: 1rem;
    --wp--preset--spacing--50: 1.5rem;
    --wp--preset--spacing--60: 2.25rem;
    --wp--preset--spacing--70: 3.38rem;
    --wp--preset--spacing--80: 5.06rem;
    --wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, .2);
    --wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, .4);
    --wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, .2);
    --wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);
    --wp--preset--shadow--crisp:6px 6px 0px rgba(0, 0, 0, 1)
}

:where(.is-layout-flex) {
    gap:.5em
}

body .is-layout-flow > .alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end:2em
}

body .is-layout-flow > .alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end:0
}

body .is-layout-flow > .aligncenter {
    margin-left: auto !important;
    margin-right:auto !important
}

body .is-layout-constrained > .alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end:2em
}

body .is-layout-constrained > .alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end:0
}

body .is-layout-constrained > .aligncenter {
    margin-left: auto !important;
    margin-right:auto !important
}

body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: var(--wp--style--global--content-size);
    margin-left: auto !important;
    margin-right:auto !important
}

body .is-layout-constrained > .alignwide {
    max-width:var(--wp--style--global--wide-size)
}

body .is-layout-flex {
    display:flex
}

body .is-layout-flex {
    flex-wrap: wrap;
    align-items:center
}

body .is-layout-flex > * {
    margin:0
}

:where(.wp-block-columns.is-layout-flex) {
    gap:2em
}

.has-black-color {
    color:var(--wp--preset--color--black) !important
}

.has-cyan-bluish-gray-color {
    color:var(--wp--preset--color--cyan-bluish-gray) !important
}

.has-white-color {
    color:var(--wp--preset--color--white) !important
}

.has-pale-pink-color {
    color:var(--wp--preset--color--pale-pink) !important
}

.has-vivid-red-color {
    color:var(--wp--preset--color--vivid-red) !important
}

.has-luminous-vivid-orange-color {
    color:var(--wp--preset--color--luminous-vivid-orange) !important
}

.has-luminous-vivid-amber-color {
    color:var(--wp--preset--color--luminous-vivid-amber) !important
}

.has-light-green-cyan-color {
    color:var(--wp--preset--color--light-green-cyan) !important
}

.has-vivid-green-cyan-color {
    color:var(--wp--preset--color--vivid-green-cyan) !important
}

.has-pale-cyan-blue-color {
    color:var(--wp--preset--color--pale-cyan-blue) !important
}

.has-vivid-cyan-blue-color {
    color:var(--wp--preset--color--vivid-cyan-blue) !important
}

.has-vivid-purple-color {
    color:var(--wp--preset--color--vivid-purple) !important
}

.has-black-background-color {
    background-color:var(--wp--preset--color--black) !important
}

.has-cyan-bluish-gray-background-color {
    background-color:var(--wp--preset--color--cyan-bluish-gray) !important
}

.has-white-background-color {
    background-color:var(--wp--preset--color--white) !important
}

.has-pale-pink-background-color {
    background-color:var(--wp--preset--color--pale-pink) !important
}

.has-vivid-red-background-color {
    background-color:var(--wp--preset--color--vivid-red) !important
}

.has-luminous-vivid-orange-background-color {
    background-color:var(--wp--preset--color--luminous-vivid-orange) !important
}

.has-luminous-vivid-amber-background-color {
    background-color:var(--wp--preset--color--luminous-vivid-amber) !important
}

.has-light-green-cyan-background-color {
    background-color:var(--wp--preset--color--light-green-cyan) !important
}

.has-vivid-green-cyan-background-color {
    background-color:var(--wp--preset--color--vivid-green-cyan) !important
}

.has-pale-cyan-blue-background-color {
    background-color:var(--wp--preset--color--pale-cyan-blue) !important
}

.has-vivid-cyan-blue-background-color {
    background-color:var(--wp--preset--color--vivid-cyan-blue) !important
}

.has-vivid-purple-background-color {
    background-color:var(--wp--preset--color--vivid-purple) !important
}

.has-black-border-color {
    border-color:var(--wp--preset--color--black) !important
}

.has-cyan-bluish-gray-border-color {
    border-color:var(--wp--preset--color--cyan-bluish-gray) !important
}

.has-white-border-color {
    border-color:var(--wp--preset--color--white) !important
}

.has-pale-pink-border-color {
    border-color:var(--wp--preset--color--pale-pink) !important
}

.has-vivid-red-border-color {
    border-color:var(--wp--preset--color--vivid-red) !important
}

.has-luminous-vivid-orange-border-color {
    border-color:var(--wp--preset--color--luminous-vivid-orange) !important
}

.has-luminous-vivid-amber-border-color {
    border-color:var(--wp--preset--color--luminous-vivid-amber) !important
}

.has-light-green-cyan-border-color {
    border-color:var(--wp--preset--color--light-green-cyan) !important
}

.has-vivid-green-cyan-border-color {
    border-color:var(--wp--preset--color--vivid-green-cyan) !important
}

.has-pale-cyan-blue-border-color {
    border-color:var(--wp--preset--color--pale-cyan-blue) !important
}

.has-vivid-cyan-blue-border-color {
    border-color:var(--wp--preset--color--vivid-cyan-blue) !important
}

.has-vivid-purple-border-color {
    border-color:var(--wp--preset--color--vivid-purple) !important
}

.has-vivid-cyan-blue-to-vivid-purple-gradient-background {
    background:var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important
}

.has-light-green-cyan-to-vivid-green-cyan-gradient-background {
    background:var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important
}

.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background {
    background:var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important
}

.has-luminous-vivid-orange-to-vivid-red-gradient-background {
    background:var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important
}

.has-very-light-gray-to-cyan-bluish-gray-gradient-background {
    background:var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important
}

.has-cool-to-warm-spectrum-gradient-background {
    background:var(--wp--preset--gradient--cool-to-warm-spectrum) !important
}

.has-blush-light-purple-gradient-background {
    background:var(--wp--preset--gradient--blush-light-purple) !important
}

.has-blush-bordeaux-gradient-background {
    background:var(--wp--preset--gradient--blush-bordeaux) !important
}

.has-luminous-dusk-gradient-background {
    background:var(--wp--preset--gradient--luminous-dusk) !important
}

.has-pale-ocean-gradient-background {
    background:var(--wp--preset--gradient--pale-ocean) !important
}

.has-electric-grass-gradient-background {
    background:var(--wp--preset--gradient--electric-grass) !important
}

.has-midnight-gradient-background {
    background:var(--wp--preset--gradient--midnight) !important
}

.has-small-font-size {
    font-size:var(--wp--preset--font-size--small) !important
}

.has-medium-font-size {
    font-size:var(--wp--preset--font-size--medium) !important
}

.has-large-font-size {
    font-size:var(--wp--preset--font-size--large) !important
}

.has-x-large-font-size {
    font-size:var(--wp--preset--font-size--x-large) !important
}

.wp-block-navigation a:where(:not(.wp-element-button)) {
    color:inherit
}

:where(.wp-block-columns.is-layout-flex) {
    gap:2em
}

.wp-block-pullquote {
    font-size: 1.5em;
    line-height:1.6
}

@font-face {
    font-family: 'design_plus';
    src: url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.eot?v=1.5);
    src: url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.eot?v=1.5#iefix) format('embedded-opentype'), url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.woff?v=1.5) format('woff'), url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.ttf?v=1.5) format('truetype'), url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.svg?v=1.5#design_plus) format('svg');
    font-weight: 400;
    font-style:normal
}

.post_row {
    line-height: 2.4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-align-items: flex-start;
    -webkit-align-items: flex-start;
    align-items:flex-start
}

.post_col {
    margin-bottom: 2em;
    -ms-flex: 1 1 0%;
    -webkit-flex: 1 1 0%;
    flex:1 1 0%
}

.post_col-2 {
    margin-right:50px
}

.post_col-3 {
    margin-right:25px
}

.post_col:last-of-type {
    margin-right:0
}

@media screen and (max-width: 768px) {
    .post_row {
        display: block;
        line-height:2
    }

    .post_col-2 {
        margin-right:0
    }

    .post_col-3 {
        margin-right:0
    }
}

.post_content .style3a, .post_content .style3b, .post_content .style4a, .post_content .style4b, .post_content .style5a, .post_content .style5b, .post_content .style6 {
    font-weight: 500;
    line-height:1.6
}

.style2a {
    margin: 65px 0 30px !important;
    padding: 0 0 .9em !important;
    border-bottom: 3px solid #000;
    font-size:26px !important
}

.style2b {
    margin: 65px 0 30px !important;
    padding: .48em 1em .47em !important;
    background: #000;
    color: #fff;
    font-size:26px !important
}

.style3a {
    margin: 65px 0 30px !important;
    padding: 1.2em .15em !important;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    font-size:22px !important
}

.style3b {
    margin: 65px 0 30px !important;
    padding: 1.1em 1.4em 1.15em !important;
    border: 1px solid #ddd;
    border-top: 3px solid #000;
    background: #fafafa;
    font-size:22px !important
}

.style4a {
    margin: 65px 0 30px !important;
    padding: .4em 0 .4em 1.2em !important;
    border-left: 3px solid #000;
    font-size: 20px !important;
    font-weight:500
}

.style4b {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    margin: 65px 0 30px !important;
    padding: .8em 1.5em .8em !important;
    border-left: #000 3px solid;
    font-size:20px !important
}

.style4b:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 2px);
    border: 1px solid #ddd;
    border-left: none;
    content: ''
}

.style5a {
    margin: 65px 0 30px !important;
    padding: .85em 1.5em .8em !important;
    border: 1px solid #ddd;
    background: #fafafa;
    font-size:18px !important
}

.style5b {
    margin: 65px 0 30px !important;
    padding: .85em 1.5em .8em !important;
    background: #000;
    color: #fff;
    font-size:18px !important
}

.style6 {
    position: relative;
    margin: 65px 0 30px !important;
    padding: 0 .8em 0 1.3em !important;
    color: #000;
    font-size: 16px !important;
    font-weight:700
}

.style6:before {
    position: absolute;
    top: .35em;
    left: 0;
    width: 12px;
    height: 12px;
    background: #000;
    content: ""
}

.balloon {
    display: block;
    z-index: 0;
    position: relative;
    width: auto;
    min-width: 115px;
    margin: 50px 0 22px;
    padding: .5em 18px .5em;
    clear: both;
    border-bottom: 0;
    background: #222;
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    text-align:left
}

.balloon:after {
    display: block;
    position: absolute;
    bottom: -10px;
    left: 30px;
    width: 0;
    height: 0;
    margin-left: -10px;
    border-width: 10px 10px 0;
    border-style: solid;
    border-color: #222 transparent transparent;
    content: ""
}

@media screen and (max-width: 767px) {
    .style2a {
        margin: 30px 0 20px !important;
        padding: 0 0 .6em !important;
        font-size:20px !important
    }

    .style2b {
        margin: 30px 0 20px !important;
        padding: .42em .7em .41em !important;
        background: #000;
        color: #fff;
        font-size:20px !important
    }

    .style3a {
        margin: 30px 0 20px !important;
        padding: .6em .15em !important;
        font-size:18px !important
    }

    .style3b {
        margin: 30px 0 20px !important;
        padding: .5em .5em .45em .6em !important;
        font-size:18px !important
    }

    .style4a {
        margin: 30px 0 20px !important;
        padding: .4em 0 .4em .8em !important;
        border-left: 2px solid #000;
        font-size:16px !important
    }

    .style4b {
        margin: 30px 0 20px !important;
        padding: .8em 1em .75em !important;
        border-left: #000 2px solid;
        font-size:16px !important
    }

    .style5a {
        margin: 30px 0 20px !important;
        padding: .8em 1em .75em !important;
        font-size:15px !important
    }

    .style5b {
        margin: 30px 0 20px !important;
        padding: .8em 1em .75em !important;
        font-size:15px !important
    }
}

@media screen and (min-width: 769px) {
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h2, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h3, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h4, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h5, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h6 {
        margin-top:40px !important
    }
}

@media screen and (max-width: 768px) {
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h2, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h3, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h4, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h5, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h6 {
        margin-top:30px !important
    }
}

@media screen and (max-width: 600px) {
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h2, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h3, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h4, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h5, .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h6 {
        margin-top:20px !important
    }
}

.post_content h2 {
    font-size:24px
}

.post_content h3 {
    font-size:22px
}

.post_content h4 {
    font-size:20px
}

.post_content h5 {
    font-size:18px
}

.post_content h6 {
    font-size:16px
}

@media screen and (max-width: 767px) {
    .post_content h2 {
        font-size:20px
    }

    .post_content h3 {
        font-size:18px
    }

    .post_content h4 {
        font-size:18px
    }

    .post_content h5 {
        font-size:16px
    }

    .post_content h6 {
        font-size:14px
    }
}

.p-vertical {
    width: 100%;
    margin: 70px 0;
    font-size: 36px;
    line-height: 1.4;
    text-align:center
}

.p-vertical p {
    display: inline-block;
    margin: 0;
    font-size: inherit;
    line-height: inherit;
    text-align: left;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode:vertical-rl
}

@media screen and (max-width: 767px) {
    .p-vertical {
        margin: 33px 0;
        font-size: 24px;
        line-height:1.3
    }
}

.q_underline {
    background-image: -webkit-linear-gradient(left, transparent 50%, #fff799 50%);
    background-image: -moz-linear-gradient(left, transparent 50%, #fff799 50%);
    background-image: linear-gradient(to right, transparent 50%, #fff799 50%);
    background-position: 0 .8em;
    background-repeat: repeat-x;
    background-size: 200% .5em;
    border: none;
    border-bottom-color: transparent;
    -webkit-transition: background 2s ease;
    -ms-transition: background 2s ease;
    transition:background 2s ease
}

.q_underline.is-active {
    background-position:-100% .8em
}

.speach_balloon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    align-items:flex-start
}

.speach_balloon_text {
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 10px;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    line-height: 2;
    margin-bottom: 3em;
    min-height: 80px;
    padding: 22px 28px;
    position:relative
}

.speach_balloon_text > * :last-child {
    margin-bottom:0 !important
}

.speach_balloon_text:before, .speach_balloon_text:after {
    border-color: transparent;
    border-style: solid;
    content: '';
    pointer-events: none;
    height: 0;
    margin-top: -10px;
    width: 0;
    position: absolute;
    right: 100%;
    top:40px
}

.speach_balloon_user {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-right: 36px;
    margin-bottom: 2em;
    min-width: 80px;
    text-align:center
}

.speach_balloon_user_image {
    border-radius: 50%;
    height: 80px !important;
    width: 80px;
    object-fit:cover
}

.speach_balloon_user_name {
    font-size: 87.5%;
    line-height: 1.2;
    margin-top:12px
}

.speach_balloon_user_name:only-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    margin-top: 0;
    min-height:80px
}

.speech_balloon_left1 .speach_balloon_text:before, .speech_balloon_left2 .speach_balloon_text:before {
    border-width: 8px 10px 8px 0;
    border-right-color: #ddd;
    margin-right:2px
}

.speech_balloon_left1 .speach_balloon_text:after, .speech_balloon_left2 .speach_balloon_text:after {
    border-width: 8px 10px 8px 0;
    margin-right: -1.5px;
    border-right-color:#fff
}

.speech_balloon_right1 .speach_balloon_user, .speech_balloon_right2 .speach_balloon_user {
    -webkit-order: 2;
    -ms-order: 2;
    order: 2;
    margin-left: 36px;
    margin-right:0
}

.speech_balloon_right1 .speach_balloon_text:before, .speech_balloon_right2 .speach_balloon_text:before {
    border-width: 8px 0 8px 10px;
    border-left-color: #ddd;
    margin-left: 2px;
    left:100%
}

.speech_balloon_right1 .speach_balloon_text:after, .speech_balloon_right2 .speach_balloon_text:after {
    border-width: 8px 0 8px 10px;
    margin-left: -1.5px;
    border-left-color: #fff;
    left:100%
}

.qt_google_map {
    width: 100%;
    height: 550px;
    background: #ddd;
    margin:0 0 35px
}

.qt_google_map .qt_googlemap_embed {
    width: 100%;
    height:550px
}

.qt_google_map .pb_googlemap_custom-overlay-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: -94px;
    left: -40px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 80px !important;
    height: 80px !important;
    border-radius: 50%;
    font-size: 18px;
    text-align:center
}

.qt_google_map .pb_googlemap_custom-overlay-inner:after {
    display: block;
    position: absolute;
    right: 0;
    bottom: -15px;
    left: 0;
    width: 0;
    height: 0;
    margin: auto;
    border-width: 16px 5px 0;
    border-style: solid;
    content: ""
}

@media screen and (max-width: 750px) {
    .qt_google_map {
        height:320px
    }

    .qt_google_map .qt_googlemap_embed {
        height:320px
    }
}

.well {
    margin-bottom: 30px;
    padding: 1.1em 2em;
    border: 1px solid #ddd;
    border-radius: 6px;
    background-color: #fafafa;
    line-height:1.8
}

.well2 {
    margin-bottom: 30px;
    padding: 1.1em 2em;
    border: 1px solid #ddd;
    line-height:1.8
}

.well3 {
    margin-bottom: 30px;
    padding: 1.1em 2em;
    border: 1px dashed #ddd;
    background: #fafafa;
    line-height:1.8
}

.wl_red {
    border-color: #ebccd1;
    background-color: #f2dede;
    color:#a94442 !important
}

.wl_yellow {
    border-color: #faebcc;
    background-color: #fcf8e3;
    color:#8a6d3b !important
}

.wl_blue {
    border-color: #bce8f1;
    background-color: #d9edf7;
    color:#31708f !important
}

.wl_green {
    border-color: #d6e9c6;
    background-color: #dff0d8;
    color:#3c763d !important
}

@media screen and (max-width: 767px) {
    .well, .well2, .well3 {
        padding:.9em .8em .9em 1em
    }
}

.q_custom_button {
    color: #fff;
    border: 1px solid #000;
    font-size: 100%;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
    overflow: hidden;
    position: relative;
    z-index: 2;
    max-width: 100%;
    padding: 0 30px;
    margin: 0;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    justify-content: center;
    -ms-align-items: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-transition: all .2s ease;
    transition:all .2s ease
}

.q_custom_button:hover, .q_custom_button:focus {
    text-decoration:none
}

.q_custom_button:before {
    content: '';
    display: block;
    width: 100%;
    height: calc(100% + 2px);
    position: absolute;
    top: -1px;
    left: -100%;
    z-index: -1;
    -webkit-transition: all .5s cubic-bezier(.22, 1, .36, 1) 0s;
    transition:all .5s cubic-bezier(.22, 1, .36, 1) 0s
}

.q_custom_button.animation_type3:before {
    transform: skewX(45deg);
    width: calc(100% + 70px);
    left:calc(-100% - 110px)
}

.q_custom_button.animation_type2:hover:before {
    left:0
}

.q_custom_button.animation_type3:hover:before {
    left:-35px
}

.q_button_wrap {
    text-align: center;
    margin:2em auto
}

.rounded {
    border-radius:6px
}

.pill {
    border-radius:70px
}

.bt_red {
    background: #c01f0e;
    border-color: #c01f0e;
    color:#fff
}

.bt_red:hover, .bt_red:focus {
    background-color: #d33929;
    border-color: #d33929;
    color:#fff
}

.bt_yellow {
    background: #f1c40f;
    border-color: #f1c40f;
    color:#fff
}

.bt_yellow:hover, .bt_yellow:focus {
    background-color: #f9d441;
    border-color: #f9d441;
    color:#fff
}

.bt_blue {
    background: #2980b9;
    border-color: #2980b9;
    color:#fff
}

.bt_blue:hover, .bt_blue:focus {
    background-color: #3a91c9;
    border-color: #3a91c9;
    color:#fff
}

.bt_green {
    background: #27ae60;
    border-color: #27ae60;
    color:#fff
}

.bt_green:hover, .bt_green:focus {
    background-color: #39c574;
    border-color: #39c574;
    color:#fff
}

.ytube {
    position: relative;
    height: 0;
    margin-top: 20px;
    margin-bottom: 20px;
    padding-bottom: 56.25%;
    padding-top: 30px;
    overflow:hidden
}

.ytube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height:100% !important
}

.rps_table {
    line-height:2.0
}

@media only screen and (max-width: 567px) {
    .rps_table tr {
        display: block;
        margin-bottom:1.5em
    }

    .rps_table th, .rps_table td {
        display: list-item;
        list-style-type: none;
        border:none
    }

    .rps_table td {
        border-top:none
    }
}

.cardlink {
    word-wrap: break-word;
    max-width: 100%;
    margin: 15px 0 2em !important;
    padding: 20px;
    border: 1px solid #ddd;
    background:#fafafa
}

.cardlink_thumbnail {
    margin-right: 25px;
    float:left
}

.cardlink_thumbnail img {
    width: 130px;
    height: 130px;
    -o-object-fit: cover;
    object-fit:cover
}

@media screen and (-ms-high-contrast: active), screen and(-ms-high-contrast: none) {
    .cardlink_thumbnail img {
        height:auto
    }
}

.cardlink_content {
    line-height:1.6
}

.cardlink_content p {
    color: #000;
    margin-bottom: .5em;
    line-height:1
}

.cardlink_timestamp {
    display: inline;
    margin: 0;
    padding: 0;
    color: #222;
    font-size: 12px;
    line-height: 1;
    vertical-align:top
}

.cardlink_title {
    margin: -3px 0 5px;
    font-size:16px
}

.cardlink_title a {
    color: #000;
    font-weight: 700;
    text-decoration:none
}

.cardlink_title a:hover {
    text-decoration:none
}

.cardlink_excerpt {
    overflow: hidden;
    color: #000;
    font-size: 14px;
    line-height: 1.9;
    max-height:5.7em
}

.cardlink_excerpt span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3
}

.cardlink_footer {
    clear:both
}

.clear {
    clear:both
}

@media screen and (max-width: 767px) {
    .cardlink_timestamp {
        display:none
    }
}

@media screen and (max-width: 567px) {
    .cardlink {
        padding:15px 11px 12px 13px
    }

    .cardlink_thumbnail {
        margin-right: 12px;
        margin-bottom: 10px;
        float:left
    }

    .cardlink_thumbnail img {
        width: 100px;
        height:100px
    }

    .cardlink_title {
        margin-top: -5px;
        font-size:14px
    }

    .cardlink_excerpt {
        clear:both
    }
}

.wpcf7 {
    width: 100%;
    margin: 0 0 2.5em !important;
    padding: 0;
    border: 1px solid #ddd;
    background: #fafafa;
    font-size:14px
}

.wpcf7 form {
    margin:1.5em 1.5em 0
}

.wpcf7 p {
    margin-bottom: 1em;
    font-size:16px
}

.wpcf7 input, .wpcf7 textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    line-height:1.2
}

.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] {
    width: auto;
    max-width: 97%;
    padding: 8px;
    border:1px solid #ccc
}

.wpcf7 select, .wpcf7 .wpcf7-list-item-label {
    font-size: 14px;
    line-height:1.2
}

.wpcf7 .wpcf7-list-item {
    display:block
}

.wpcf7 textarea {
    height:300px
}

.wpcf7 input:focus, .wpcf7 textarea:focus {
    border: 1px solid #bbb;
    outline:none
}

.wpcf7 .wpcf7-submit, .wpcf7 .wpcf7-previous {
    -webkit-transition: all .3s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    position: relative;
    width: 225px;
    height: 48px;
    margin: 30px auto 0;
    border: none !important;
    outline: none;
    background-color: #333;
    color: #fff;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:all .3s
}

.wpcf7 .wpcf7-submit:before, .wpcf7 .wpcf7-submit:after {
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.wpcf7 .wpcf7-submit:hover, .wpcf7 .wpcf7-previous:hover {
    background-color:#666
}

.wpcf7 .wpcf7-submit .wpcf7-not-valid {
    background:pink
}

.wpcf7 .wpcf7-submit .wpcf7-response-output {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    margin: 10px 0 0;
    padding: 8px 35px 8px 14px;
    border-radius:4px
}

.wpcf7 .wpcf7-submit .wpcf7-validation-errors {
    border: 1px solid #eed3d7;
    background-color: #f2dede;
    color:#b94a48
}

.wpcf7 .wpcf7-submit .wpcf7-mail-sent-ok {
    border: 1px solid #bce8f1;
    background-color: #d9edf7;
    color:#3a87ad
}

.wpcf7 .wpcf7-previous + br {
    display:none
}

.wpcf7 form .wpcf7-response-output {
    margin: 2em .5em 2em;
    padding: 0;
    border: none;
    text-align:center
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    color: #dc3232;
    font-size:1em
}

.wpcf7 {
    color:#000
}

.text70 {
    font-size:70%
}

.text80 {
    font-size:80%
}

.text90 {
    font-size:90%
}

.text100 {
    font-size:100%
}

.text110 {
    font-size:110%
}

.text120 {
    font-size:120%
}

.text130 {
    font-size:130%
}

.text140 {
    font-size:140%
}

.text150 {
    font-size:150%
}

.text160 {
    font-size:160%
}

.text170 {
    font-size:170%
}

.text180 {
    font-size:180%
}

.text190 {
    font-size:190%
}

.text200 {
    font-size:200%
}

.text210 {
    font-size:210%
}

.text220 {
    font-size:220%
}

.b {
    font-weight:700
}

.u {
    text-decoration:underline
}

.del {
    text-decoration:line-throug
}

.red {
    color:red
}

.blue {
    color:#2ca9e1
}

.green {
    color:#82ae46
}

.orange {
    color:#ff7d00
}

.yellow {
    color:#fff000
}

.pink {
    color:#ff0084
}

.gray {
    color:#999
}

.bg-yellow {
    padding: 2px;
    background-color:#ff0
}

.bg-blue {
    padding: 2px;
    background-color:#4ab0f5
}

.bg-red {
    padding: 2px;
    background-color:red
}

.align1 {
    text-align:center !important
}

.align2 {
    text-align:right !important
}

.align3 {
    text-align:left !important
}

.r-flo {
    float: right;
    margin:10px
}

.l-flo {
    float: left;
    margin:10px
}

.f-clear {
    clear:both
}

a img.fade {
    background: 0 0 !important;
    outline: none;
    -webkit-transition: all .3s;
    transition:all .3s
}

a:hover img.fade {
    opacity: .7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
    background:0 0 !important
}

.att {
    padding-left: 1em;
    text-indent:-1em
}

.att_box {
    margin: 2em 0 2.5em;
    padding: 1em 1.2em;
    line-height: 2;
    border: 1px dotted #ccc;
    background: #fcfcfc;
    box-shadow:0px 4px 0px 0px #f7f7f7
}

.m0 {
    margin:0 !important
}

.mt0 {
    margin-top:0 !important
}

.mr0 {
    margin-right:0 !important
}

.mb0 {
    margin-bottom:0 !important
}

.ml0 {
    margin-left:0 !important
}

.m5 {
    margin:5px !important
}

.mt5 {
    margin-top:5px !important
}

.mr5 {
    margin-right:5px !important
}

.mb5 {
    margin-bottom:5px !important
}

.ml5 {
    margin-left:5px !important
}

.m10 {
    margin:10px !important
}

.mt10 {
    margin-top:10px !important
}

.mr10 {
    margin-right:10px !important
}

.mb10 {
    margin-bottom:10px !important
}

.ml10 {
    margin-left:10px !important
}

.m15 {
    margin:15px !important
}

.mt15 {
    margin-top:15px !important
}

.mr15 {
    margin-right:15px !important
}

.mb15 {
    margin-bottom:15px !important
}

.ml15 {
    margin-left:15px !important
}

.m20 {
    margin:20px !important
}

.mt20 {
    margin-top:20px !important
}

.mr20 {
    margin-right:20px !important
}

.mb20 {
    margin-bottom:20px !important
}

.ml20 {
    margin-left:20px !important
}

.m25 {
    margin:25px !important
}

.mt25 {
    margin-top:25px !important
}

.mr25 {
    margin-right:25px !important
}

.mb25 {
    margin-bottom:25px !important
}

.ml25 {
    margin-left:25px !important
}

.m30 {
    margin:30px !important
}

.mt30 {
    margin-top:30px !important
}

.mr30 {
    margin-right:30px !important
}

.mb30 {
    margin-bottom:30px !important
}

.ml30 {
    margin-left:30px !important
}

.m35 {
    margin:35px !important
}

.mt35 {
    margin-top:35px !important
}

.mr35 {
    margin-right:35px !important
}

.mb35 {
    margin-bottom:35px !important
}

.ml35 {
    margin-left:35px !important
}

.m40 {
    margin:40px !important
}

.mt40 {
    margin-top:40px !important
}

.mr40 {
    margin-right:40px !important
}

.mb40 {
    margin-bottom:40px !important
}

.ml40 {
    margin-left:40px !important
}

.m45 {
    margin:45px !important
}

.mt45 {
    margin-top:45px !important
}

.mr45 {
    margin-right:45px !important
}

.mb45 {
    margin-bottom:45px !important
}

.ml45 {
    margin-left:45px !important
}

.m50 {
    margin:50px !important
}

.mt50 {
    margin-top:50px !important
}

.mr50 {
    margin-right:50px !important
}

.mb50 {
    margin-bottom:50px !important
}

.ml50 {
    margin-left:50px !important
}

.m55 {
    margin:55px !important
}

.mt55 {
    margin-top:55px !important
}

.mr55 {
    margin-right:55px !important
}

.mb55 {
    margin-bottom:55px !important
}

.ml55 {
    margin-left:55px !important
}

.m60 {
    margin:60px !important
}

.mt60 {
    margin-top:60px !important
}

.mr60 {
    margin-right:60px !important
}

.mb60 {
    margin-bottom:60px !important
}

.ml60 {
    margin-left:60px !important
}

.m65 {
    margin:65px !important
}

.mt65 {
    margin-top:65px !important
}

.mr65 {
    margin-right:65px !important
}

.mb65 {
    margin-bottom:65px !important
}

.ml65 {
    margin-left:65px !important
}

.m70 {
    margin:70px !important
}

.mr70 {
    margin-right:70px !important
}

.mb70 {
    margin-bottom:70px !important
}

.ml70 {
    margin-left:70px !important
}

.m75 {
    margin:75px !important
}

.mt75 {
    margin-top:75px !important
}

.mr75 {
    margin-right:75px !important
}

.mb75 {
    margin-bottom:75px !important
}

.ml75 {
    margin-left:75px !important
}

.m80 {
    margin:80px !important
}

.mt80 {
    margin-top:80px !important
}

.mr80 {
    margin-right:80px !important
}

.mb80 {
    margin-bottom:80px !important
}

.ml80 {
    margin-left:80px !important
}

.p0 {
    padding:0 !important
}

.pt0 {
    padding-top:0 !important
}

.pr0 {
    padding-right:0 !important
}

.pb0 {
    padding-bottom:0 !important
}

.pl0 {
    padding-left:0 !important
}

.p5 {
    padding:5px !important
}

.pt5 {
    padding-top:5px !important
}

.pr5 {
    padding-right:5px !important
}

.pb5 {
    padding-bottom:5px !important
}

.pl5 {
    padding-left:5px !important
}

.p10 {
    padding:10px !important
}

.pt10 {
    padding-top:10px !important
}

.pr10 {
    padding-right:10px !important
}

.pb10 {
    padding-bottom:10px !important
}

.pl10 {
    padding-left:10px !important
}

@font-face {
    font-family: 'design_plus';
    src: url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.eot?v=1.5);
    src: url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.eot?v=1.5#iefix) format('embedded-opentype'), url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.woff?v=1.5) format('woff'), url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.ttf?v=1.5) format('truetype'), url(https://demo.tcd-theme.com/tcd088/wp-content/themes/solaris_tcd088/css/../fonts/design_plus.svg?v=1.5#design_plus) format('svg');
    font-weight: 400;
    font-style: normal
}

[class^=icon-], [class * =" icon-"] {
    font-family: "design_plus" !important;
    line-height: 1;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

.icon-feedly:before {
    content: "\e907"
}

.icon-hatebu:before {
    content: "\e908"
}

.icon-line:before {
    content: "\e909"
}

.icon-pocket:before {
    content: "\e90a"
}

.icon-google-plus:before {
    content: "\e900"
}

.icon-google-plus2:before {
    content: "\e901"
}

.icon-facebook:before {
    content: "\e902"
}

.icon-facebook2:before {
    content: "\e903"
}

.icon-twitter:before {
    content: "\e904"
}

.icon-rss:before {
    content: "\e90b"
}

.icon-rss2:before {
    content: "\e906"
}

.icon-pinterest:before {
    content: "\e905"
}

.share-top {
    margin-bottom:30px
}

.share-btm {
    margin-bottom:50px
}

.share-type1 {
    width:100%
}

.share-type1 h2 {
    color: #666;
    font-weight:400
}

.share-type1 ul {
    list-style: none;
    margin: 0;
    padding:0
}

.share-type1 li {
    display: inline-block;
    padding: 0;
    text-align:center
}

.share-type1 li > a:hover {
    -webkit-transform: translate3d(0, 1px, 0);
    transform:translate3d(0, 1px, 0)
}

.share-type1 a {
    min-width: 27px;
    text-decoration: none;
    display: inline-block;
    margin: 0 5px 5px 0;
    font-size: 12px;
    font-weight: 400;
    color: #fff !important;
    background: #fafafa;
    border-radius: 2px;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .03);
    text-shadow: none;
    text-align: center;
    line-height: 25px;
    padding: 1px 5px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box
}

.share-type1 i {
    position: relative;
    top: 3px;
    color: #fff;
    font-size: 1.3em;
    text-shadow:1px 1px 0 rgba(255, 255, 255, .1)
}

.share-type1 .ttl {
    margin: 0 3px 0 2px;
    text-align: center;
    line-height:20px
}

.share-type1 .share-count {
    display: inline;
    font-size: 9px;
    color: #fff;
    padding: 0;
    line-height: 25px;
    margin: 0;
    border-radius: 0 1px 1px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box
}

@media screen and (max-width: 767px) {
    .share-type1 {
        width:100%
    }

    .share-type1 ul {
        margin-bottom:15px
    }

    .share-type1 li > a span {
        display:none
    }

    .share-type1 a {
        margin-right:2px
    }

    .share-type1 i {
        left:1px
    }

    .share-type1 .share-count {
        margin-left:3px
    }
}

.share-type3 .sns {
    margin: 0;
    text-align:center
}

.share-type3 ul {
    margin: 0 -3% 3% 0;
    list-style:none
}

.share-type3 li {
    float: left;
    width: 47%;
    margin: 0 3% 1.5% 0;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box
}

.post .share-type3 ul li {
    list-style: none;
    background-image: none;
    padding:0
}

.share-type3 ul li a {
    position: relative;
    display: block;
    top: 3px;
    font-size: 13px;
    padding: 10px 2px;
    color: #fff;
    border-radius: 2px;
    text-align: center;
    text-decoration: none;
    vertical-align:middle
}

.share-type3 ul li a i {
    position: relative;
    top: 3px;
    font-size:140%
}

.share-type3 ul li a .ttl {
    margin: 0 3px 0 4px;
    display: inline-block;
    text-align: center;
    font-size:12px
}

.share-type3 ul li a .share-count {
    position: absolute;
    bottom: -2px;
    right: 8px;
    font-size: 10px;
    padding: 0;
    line-height: 25px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box
}

.share-type3 ul li a:hover {
    -webkit-transform: translate3d(0px, 2px, 1px);
    -moz-transform: translate3d(0px, 2px, 1px);
    transform:translate3d(0px, 2px, 1px)
}

@media only screen and (min-width: 480px) {
    .share-type3 {
        width: auto;
        margin:20px 0 15px
    }

    .share-type3 ul {
        margin-right: -1%;
        list-style: none;
        overflow:hidden
    }

    .share-type3 li {
        width: 24%;
        margin:0 1% 2% 0
    }

    .share-type3 li a {
        font-size: 12px;
        padding:10px 2px
    }

    .share-type3 li:nth-child(4n) {
        margin-right:0
    }
}

.share-type1 .twitter a, .share-type3 .twitter a {
    background-color:#55acee
}

.share-type1 .twitter a:hover, .share-type3 .twitter a:hover {
    background-color:#468ec5
}

.share-type1 ul li.facebook a, .share-type3 ul li.facebook a {
    background-color:#35629a
}

.share-type1 ul li.facebook a:hover, .share-type3 ul li.facebook a:hover {
    background-color:#1f3669
}

.share-type1 ul li.googleplus a, .share-type3 ul li.googleplus a {
    background-color:#dd4b39
}

.share-type1 ul li.googleplus a:hover, .share-type3 ul li.googleplus a:hover {
    background-color:#b94031
}

.share-type1 ul li.googleplus a i {
    top:4px
}

.share-type1 ul li.hatebu > a, .share-type3 ul li.hatebu a {
    background-color:#3c7dd1
}

.share-type1 ul li.hatebu > a:hover, .share-type3 ul li.hatebu a:hover {
    background-color:#0270ac
}

.share-type1 ul li.pocket a, .share-type3 ul li.pocket a {
    background-color:#ee4056
}

.share-type1 ul li.pocket a:hover, .share-type3 ul li.pocket a:hover {
    background-color:#c53648
}

.share-type1 ul li.rss a, .share-type3 ul li.rss a {
    background-color:#ffb53c
}

.share-type1 ul li.rss a:hover, .share-type3 ul li.rss a:hover {
    background-color:#e09900
}

.share-type1 ul li.feedly a, .share-type3 ul li.feedly a {
    background-color:#6cc655
}

.share-type1 ul li.feedly > a:hover, .share-type3 ul li.feedly > a:hover {
    background-color:#5ca449
}

.share-type1 ul li.pinterest a, .share-type3 ul li.pinterest a {
    background-color:#d4121c
}

.share-type1 ul li.pinterest a:hover, .share-type3 ul li.pinterest a:hover {
    background-color:#a42f35
}

.share-type2 {
    width:auto
}

.share-type2 h2 {
    color: #444;
    font-weight:400
}

.share-type2 ul.type2 {
    margin: 0;
    padding: 0;
    list-style:none
}

.share-type2 ul.type2 li {
    display: inline-block;
    padding: 0;
    text-align:center
}

.share-type2 ul.type2 li a {
    text-decoration: none;
    display: inline-block;
    margin: 0 5px 5px 0;
    font-size: 12px;
    font-weight: 400;
    border-radius: 2px;
    color: #222 !important;
    text-align: center;
    background: #fafafa !important;
    border: 1px solid rgba(0, 0, 0, .1);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .03);
    text-shadow: none;
    line-height: 25px;
    padding:1px 4px 0
}

.share-type2 ul.type2 li a i {
    position: relative;
    top: 3px;
    color: #222;
    font-size: 1.3em;
    text-shadow:1px 1px 0 rgba(255, 255, 255, .1)
}

.share-type2 ul.type2 li a .ttl {
    margin: 0 3px 0 2px;
    text-align: center;
    line-height:20px
}

.share-type2 ul.type2 li a .share-count {
    color: #444;
    font-size: 9px;
    padding: 0;
    line-height: 25px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box
}

.share-type2 ul.type2 li a:hover, .share-type2 ul.type2 li a:hover i, .share-type2 ul.type2 li a:hover .share-count {
    color:#fff !important
}

.share-type2 ul.type2 li a:hover {
    border-color:rgba(255, 255, 255, .1)
}

@media screen and (max-width: 480px) {
    .share-type2 {
        width: auto;
        margin:0
    }

    .share-type2 ul.type2 {
        margin-bottom:15px
    }

    .share-type2 ul.type2 li a {
        margin-right:1px
    }

    .share-type2 ul.type2 li a i {
        left:1px
    }

    .share-type2 ul.type2 li > a span.ttl {
        display:none
    }

    .share-type2 ul.type2 li a .share-count {
        margin-left:3px
    }
}

.share-type4 {
    text-align:center
}

.share-type4 .sns {
    margin:0
}

.share-type4 ul.type4 {
    margin: 0 -3% 2% 0;
    list-style:none
}

.share-type4 ul.type4 li {
    float: left;
    width: 47%;
    margin: 0 3% 3% 0;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box
}

.post .share-type4 ul li {
    list-style: none;
    background-image: none;
    padding:0
}

.share-type4 ul.type4 li a {
    position: relative;
    display: block;
    top: 5px;
    font-size: 13px;
    padding: 10px 2px;
    text-decoration: none;
    border-radius: 2px;
    color: #222 !important;
    text-align: center;
    background: #fafafa !important;
    border: 1px solid rgba(0, 0, 0, .1);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .03);
    text-shadow:none
}

.share-type4 ul.type4 li a i {
    position: relative;
    top: 3px;
    font-size: 140%;
    color:#222 !important
}

.share-type4 ul.type4 li a .ttl {
    margin: 0 3px 0 4px;
    display: inline-block;
    text-align: center;
    font-size:12px
}

.share-type4 ul.type4 li a .share-count {
    position: absolute;
    bottom: -2px;
    right: 8px;
    font-size: 10px;
    padding: 0;
    line-height: 25px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    color:#222 !important
}

.share-type4 ul.type4 li a:hover, .share-type4 ul.type4 li a:hover i, .share-type4 ul.type4 li a:hover .share-count {
    color:#fff !important
}

@media only screen and (min-width: 480px) {
    .share-type4 {
        width: auto;
        margin:20px 0 15px
    }

    .share-type4 ul.type4 {
        margin-right: -1%;
        list-style: none;
        overflow:hidden
    }

    .share-type4 ul.type4 li {
        width: 24%;
        margin:0 1% 2% 0
    }

    .share-type4 ul.type4 li a {
        font-size: 12px;
        padding:10px 2px
    }

    .share-type4 ul.type4 li:nth-child(4n) {
        margin-right:0
    }
}

.share-type2 ul.type2 li.twitter a, .share-type4 ul.type4 li.twitter a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.twitter a:hover, .share-type4 ul.type4 li.twitter a:hover {
    color: #fff !important;
    background-color:#55acee !important
}

.share-type2 ul.type2 li.facebook a, .share-type4 ul.type4 li.facebook a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.facebook a:hover, .share-type4 ul.type4 li.facebook a:hover {
    color: #fff !important;
    background-color:#35629a !important
}

.share-type2 ul.type2 li.googleplus a, .share-type4 ul.type4 li.googleplus a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.googleplus a:hover, .share-type4 ul.type4 li.googleplus a:hover {
    color: #fff !important;
    background-color:#dd4b39 !important
}

.share-type2 ul.type2 li.googleplus a i, .share-type4 ul.type4 li.googleplus a i {
    top:4px
}

.share-type2 ul.type2 li.hatebu a, .share-type4 ul.type4 li.hatebu a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.hatebu a:hover, .share-type4 ul.type4 li.hatebu a:hover {
    color: #fff !important;
    background-color:#3c7dd1 !important
}

.share-type2 ul.type2 li.pocket a, .share-type4 ul.type4 li.pocket a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.pocket a:hover, .share-type4 ul.type4 li.pocket a:hover {
    color: #fff !important;
    background-color:#ee4056 !important
}

.share-type2 ul.type2 li.rss a, .share-type4 ul.type4 li.rss a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.rss a:hover, .share-type4 ul.type4 li.rss a:hover {
    color: #fff !important;
    background-color:#ff8c00 !important
}

.share-type2 ul.type2 li.feedly a, .share-type4 ul.type4 li.feedly a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.feedly a:hover, .share-type4 ul.type4 li.feedly a:hover {
    color: #fff !important;
    background-color:#6cc655 !important
}

.share-type2 ul.type2 li.pinterest a, .share-type4 ul.type4 li.pinterest a {
    color: #222 !important;
    background-color:#fafafa !important
}

.share-type2 ul.type2 li.pinterest a:hover, .share-type4 ul.type4 li.pinterest a:hover {
    color: #fff !important;
    background-color:#d4121c !important
}

.sns_default_top {
    padding: 0;
    overflow: hidden;
    list-style:none
}

.sns_default_top ul li {
    display: inline-block;
    margin: 0 5px 3px 0;
    line-height: 1 !important;
    overflow: hidden;
    vertical-align:top
}

.sns_default_top ul li.twitter_button {
    width:89px
}

.sns_default_top ul li.fbshare_button:hover {
    text-decoration:none
}

.sns_default_top ul li.google_button {
    width:58px
}

.sns_default_top ul li.pocket_button {
    width:88px
}

@media only screen and (max-width: 480px) {
    .sns_default_top ul li {
        margin-bottom:6px
    }

    .sns_default_top ul li.twitter_button {
        margin-left:0
    }
}

@media screen and (max-width: 1201px) {
    #container {
        position: relative;
        height:100%
    }

    #main_contents {
        width: auto;
        padding: 40px 0 60px;
        margin: 0 auto;
        display:block
    }

    #main_contents:after {
        display:none
    }

    #main_col {
        width: auto;
        max-width: 770px;
        margin: 0 auto;
        padding:0
    }

    body.page #main_contents {
        padding-top:60px
    }

    body.page #main_col {
        padding-top:0
    }

    body.hide_sidebar #main_col {
        width: auto;
        padding-top:0
    }

    #side_col {
        width: auto;
        max-width: 770px;
        margin: 70px auto 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap:wrap
    }

    @media screen and (max-width: 900px) {
        #main_contents {
            padding: 20px 20px 40px;
            display:block
        }

        #main_col {
            width: auto !important;
            margin-bottom: 40px;
            padding:0
        }

        #side_col {
            width: auto;
            margin: 40px auto 0;
            display: block;
            max-width:365px
        }
    }

    @media screen and (max-width: 750px) {
        body.page #main_contents {
            padding-top:35px
        }
    }

    @media screen and (max-width: 550px) {
        #main_contents {
            padding:20px 20px 0
        }

        #side_col {
            max-width:inherit
        }
    }

    #drawer_menu {
        display: block;
        position: fixed;
        top: 0;
        right: -400px;
        width: 400px;
        height: 100%;
        background: #333;
        overflow: auto;
        z-index: 9999;
        -webkit-transition: right .3s cubic-bezier(.19, 1.000, .22, 1.000);
        transition: right .3s cubic-bezier(.19, 1.000, .22, 1.000);
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-overflow-scrolling:touch
    }

    .open_menu #drawer_menu {
        right: 0;
        box-shadow:-5px 0 20px 0 rgba(0, 0, 0, .4)
    }

    @media screen and (max-width: 500px) {
        #drawer_menu {
            right: -80%;
            width:80%
        }
    }

    .open_menu #container:before {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        background: rgba(0, 0, 0, .6);
        z-index:9999
    }

    _::-webkit-full-page-media, _:future, :root .open_menu #container:before {
        background: rgba(0, 0, 0, .6);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter:blur(10px)
    }

    @supports (-ms-ime-align: auto) {
        .open_menu #container:before {
            background: rgba(0, 0, 0, .6);
            -webkit-backdrop-filter: blur(10px);
            backdrop-filter:blur(10px)
        }
    }

    #drawer_menu .simplebar-scrollbar:before {
        background:#fff !important
    }

    body.admin-bar {
        padding-top:32px
    }

    body.admin-bar.header_fix_mobile #header {
        margin-top:32px
    }

    body.admin-bar #drawer_menu {
        padding-top:32px
    }

    .mobile body.admin-bar.header_fix_mobile {
        padding-top:102px
    }

    @media screen and (max-width: 781px) {
        body.admin-bar {
            padding-top:46px
        }

        body.admin-bar.header_fix_mobile #header {
            margin-top:46px
        }

        body.admin-bar #drawer_menu {
            padding-top:46px
        }

        body.admin-bar.fixed_find_menu #find_menu_wrap {
            top:46px
        }

        body.admin-bar.fixed_find_menu {
            padding-top:106px
        }

        .mobile body.admin-bar.header_fix_mobile {
            padding-top:126px
        }
    }

    @media screen and (max-width: 750px) {
        .design_button {
            height:50px
        }

        .design_button a {
            min-width: 240px;
            height: 50px;
            line-height: 50px;
            font-size: 14px;
            padding:0 15px
        }
    }

    .design_headline2 {
        margin: 100px 0 63px !important;
        padding:0 !important
    }

    @media screen and (max-width: 750px) {
        .design_headline1 {
            font-size: 20px !important;
            margin: 0 0 30px !important;
            padding:0 !important
        }

        .design_headline2 {
            font-size: 18px !important;
            margin:33px -20px 35px !important
        }

        .design_headline2 span {
            padding-top:15px
        }

        body.hide_sidebar .design_headline2 {
            margin-right: -20px !important;
            padding-right:-20px !important
        }

        .two_column_image + .design_headline2 {
            margin-top:40px !important
        }
    }

    .design_line {
        margin:50px 0 53px
    }

    @media screen and (max-width: 750px) {
        .design_line {
            margin: 32px -20px 35px;
            width:calc(100% + 40px)
        }
    }

    @media screen and (max-width: 750px) {
        .two_column_image {
            margin:35px 0 35px
        }

        .design_headline2 + .two_column_image {
            margin-top:0
        }

        .two_column_image .item:first-of-type {
            margin-right:1px
        }
    }

    @media screen and (max-width: 750px) {
        body.use_loading_screen.load_screen_animation_type2 #container {
            transform:translate3d(0px, 30px, 0px)
        }

        body.use_loading_screen.load_screen_animation_type3 #container {
            transform:translate3d(0px, -30px, 0px)
        }
    }

    #header_slider_wrap {
        height:800px
    }

    #header_slider {
        height:800px
    }

    #header_slider .item {
        height:800px
    }

    #header_slider .caption {
        width: 100%;
        padding: 0 60px;
        max-width:1150px
    }

    @media screen and (max-width: 950px) {
        #header_slider_wrap {
            height:700px
        }

        #header_slider {
            height:700px
        }

        #header_slider .item {
            height:700px
        }

        #header_slider .caption {
            padding:0 40px
        }

        #header_slider_nav_wrap.stop_animation {
            display:none
        }

        #header_slider .slick-dots {
            display: block !important;
            position: absolute;
            bottom: 23px;
            left: 0;
            width: 100%;
            z-index: 10;
            text-align:center
        }

        #header_slider .slick-dots li {
            display: inline-block;
            width: 10px;
            height: 10px;
            margin: 0 7px;
            font-size:10px
        }

        #header_slider .slick-dots button {
            cursor: pointer;
            border: none;
            color: transparent;
            width: 14px;
            height: 10px;
            display: block;
            font-size: 0;
            background: 0 0;
            position:relative
        }

        #header_slider .slick-dots button:before {
            content: '';
            display: block;
            width: 10px;
            height: 10px;
            line-height: 10px;
            background: 0 0;
            border: 1px solid #fff;
            border-radius: 12px;
            position: absolute;
            top: 0;
            left:0
        }

        #header_slider .slick-dots button:hover:before, #header_slider .slick-dots .slick-active button:before {
            background: #ccc;
            border-color:#ccc
        }
    }

    @media screen and (max-width: 750px) {
        #header_slider_wrap {
            height:555px
        }

        #header_slider {
            height:555px
        }

        #header_slider .item {
            height:555px
        }

        #header_slider .caption {
            padding:0 20px
        }

        #header_slider .catch {
            font-weight:600 !important
        }

        #header_slider .desc {
            margin:10px 0 -5px
        }

        #header_slider .desc p.pc {
            display:none
        }

        #header_slider .desc p.mobile {
            display:block
        }

        #header_slider .design_button {
            font-size: 14px;
            min-width: 200px;
            height: 45px;
            line-height: 45px;
            padding: 0 20px;
            margin-top:15px
        }

        #header_slider .bg_image.pc {
            display:none
        }

        #header_slider .bg_image.mobile {
            display:block
        }

        #header_slider_nav_wrap {
            bottom: 15px;
            height:86px
        }

        #header_slider_nav_wrap.two_item {
            display:none
        }

        #header_slider_nav_wrap.stop_animation {
            display:none
        }

        #header_slider_nav .nav_item {
            width: 255px;
            height: 86px;
            margin:0 7px
        }

        #header_slider_nav .nav_catch {
            font-size: 12px;
            padding:0 40px 0 20px
        }

        #header_slider_nav .nav_item:after {
            width: 255px;
            height: 86px;
            left:-255px
        }

        #header_slider_nav .nav_item:before {
            font-size: 12px;
            top: 40px;
            right:20px
        }

        #header_slider .slick-dots {
            display: block !important;
            position: absolute;
            bottom: 23px;
            left: 0;
            width: 100%;
            z-index: 10;
            text-align:center
        }

        #header_slider .slick-dots li {
            display: inline-block;
            width: 10px;
            height: 10px;
            margin: 0 7px;
            font-size:10px
        }

        #header_slider .slick-dots button {
            cursor: pointer;
            border: none;
            color: transparent;
            width: 14px;
            height: 10px;
            display: block;
            font-size: 0;
            background: 0 0;
            position:relative
        }

        #header_slider .slick-dots button:before {
            content: '';
            display: block;
            width: 10px;
            height: 10px;
            line-height: 10px;
            background: 0 0;
            border: 1px solid #fff;
            border-radius: 12px;
            position: absolute;
            top: 0;
            left:0
        }

        #header_slider .slick-dots button:hover:before, #header_slider .slick-dots .slick-active button:before {
            background: #ccc;
            border-color:#ccc
        }
    }

    body.no_index_header_content #header {
        border-bottom:1px solid #ddd
    }

    body.no_index_header_content.header_fix_mobile #header {
        border-bottom:none
    }

    body.no_index_header_content #index_content_builder {
        border-top: 1px solid #ddd;
        padding:60px 0 0
    }

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

    @media screen and (max-width: 750px) {
        .cb_headline .sub_headline {
            font-size:14px
        }

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

    @media screen and (max-width: 950px) {
        #index_news_ticker {
            width: 100%;
            height:70px
        }
    }

    @media screen and (max-width: 750px) {
        #index_news_ticker {
            width: 100%;
            height:115px
        }

        #index_news_ticker .item {
            height: auto;
            padding: 20px 20px 15px;
            display:block
        }

        #index_news_ticker .date {
            width: auto;
            margin: 0 10px 0 0;
            height: 25px;
            line-height: 26px;
            font-size: 12px;
            float:left
        }

        #index_news_ticker .category {
            font-size: 11px;
            margin-right: 0;
            min-width: 80px;
            height: 25px;
            line-height: 26px;
            padding:0 15px
        }

        #index_news_ticker .title {
            font-size: 14px;
            text-overflow: clip;
            white-space: normal;
            max-height: 3.6em;
            margin-top: 10px;
            clear:both
        }

        #index_news_ticker .title a {
            overflow: visible;
            text-overflow: clip;
            white-space: normal;
            display: -webkit-inline-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp:2
        }
    }

    .tab_content_top .tab {
        width:100%
    }

    .tab_content_bottom {
        width: auto;
        border: none;
        padding:100px 60px
    }

    .tab_content_bottom .item {
        left: 60px;
        right:60px
    }

    .tab_content_bottom .image_area {
        width:50%
    }

    .tab_content_bottom .content {
        width:calc(50% - 60px)
    }

    @media screen and (max-width: 950px) {
        .tab_content_top {
            height:500px
        }

        .tab_content_top_inner {
            width: 100%;
            padding:0 40px
        }

        .tab_content_bottom {
            padding:100px 40px
        }

        .tab_content_bottom .image_area {
            margin-right:40px
        }

        .tab_content_bottom .content {
            width:calc(50% - 40px)
        }

        .tab_content_top .tab {
            height:50px
        }

        .tab_content_top .tab .item {
            font-size: 14px;
            height: 50px;
            line-height: 50px;
            min-width: 150px;
            margin: 0 4px;
            padding: 0 15px;
            border-radius:5px 5px 0 0
        }
    }

    @media screen and (max-width: 750px) {
        .tab_content_top {
            height:360px
        }

        .tab_content_top_inner {
            padding:0 20px
        }

        .tab_content_top .desc {
            line-height: 2;
            margin:6px 0 0
        }

        .tab_content_top .design_button {
            margin-top:20px
        }

        .tab_content_top .tab {
            height:40px
        }

        .tab_content_top .tab .item {
            font-size: 12px;
            height: 40px;
            line-height: 40px;
            min-width:70px
        }

        .tab_content_bottom {
            padding:40px 20px
        }

        .tab_content_bottom .item {
            left: 20px;
            right: 20px;
            top:40px
        }

        .tab_content_bottom .item_inner {
            display:block
        }

        .tab_content_bottom .image_area {
            width: 100%;
            margin: 0 auto;
            max-width:500px
        }

        .tab_content_bottom .content {
            width: 100%;
            margin:37px 0 0
        }

        .tab_content_bottom .title {
            margin-bottom:11px
        }

        .tab_content_bottom .catch {
            margin-bottom:6px
        }

        .tab_content_bottom .desc {
            line-height:2
        }

        .tab_content_bottom .design_button {
            margin-top:33px
        }

        .tab_content_bottom .slick-dots {
            bottom:20px
        }
    }

    .cb_service_list {
        background:#f6f6f6
    }

    .cb_service_top {
        width: auto;
        padding: 90px 60px;
        border:none
    }

    .cb_service_bottom {
        width: auto;
        padding: 70px 60px;
        border:none
    }

    .cb_service_list.cb_content:last-of-type .cb_service_bottom {
        padding-bottom:100px
    }

    .cb_service_item_list .item {
        position: relative;
        height: 500px;
        overflow:hidden
    }

    .cb_service_item_list .item a {
        display: block;
        position: relative;
        width: 100%;
        height: 100%;
        color:#fff
    }

    .cb_service_item_list .item a:after {
        content: '';
        display: block;
        width: 50%;
        height: 100%;
        background: rgba(0, 0, 0, .5);
        position: absolute;
        right: 0;
        top: 0;
        z-index:2
    }

    .cb_service_item_list .content {
        width: 50%;
        position: absolute;
        right: 0;
        bottom: auto !important;
        z-index: 3;
        padding: 60px;
        position: absolute;
        top: 50%;
        -ms-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    .cb_service_item_list .item:nth-child(even) a:after {
        right: auto;
        left:0
    }

    .cb_service_item_list .item:nth-child(even) .content {
        right: auto;
        left:0
    }

    .cb_service_item_list .title {
        font-weight: 600;
        line-height: 1.5;
        margin-top:8px
    }

    .cb_service_item_list .title span {
        display:block
    }

    .cb_service_item_list .sub_title {
        font-weight:500
    }

    .cb_service_item_list .title br {
        display:none
    }

    .cb_service_item_list .desc {
        line-height: 2.4;
        color: #fff;
        margin-top:30px
    }

    .cb_service_item_list .image_wrap {
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 1;
        overflow:hidden
    }

    .cb_service_item_list .image {
        width: 100%;
        height: 100% !important;
        display: block;
        overflow: hidden;
        position: relative;
        z-index:2
    }

    .cb_service_item_list .bottom_title {
        font-weight: 600;
        margin: 38px 0 0;
        line-height: 1;
        position: relative;
        display: inline-block;
        padding:0 20px 0 0
    }

    .cb_service_item_list .bottom_title:after {
        font-family: 'design_plus';
        content: '\e910';
        font-size: 14px;
        display: block;
        position: absolute;
        top: 2px;
        right: 0;
        font-weight: 500;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        -webkit-transition: all .2s ease;
        transition:all .2s ease
    }

    @media screen and (max-width: 950px) {
        .cb_service_top {
            padding:90px 40px
        }

        .cb_service_bottom {
            padding:70px 40px
        }
    }

    @media screen and (max-width: 750px) {
        .cb_service_list {
            z-index: 2;
            position:relative
        }

        .cb_service_top {
            padding:35px 20px
        }

        .cb_service_top .cb_desc {
            line-height: 2;
            margin:30px 0 0
        }

        .cb_service_item_list .item {
            height:100%
        }

        .cb_service_item_list .content {
            position: relative;
            width: 100%;
            padding: 35px 50px 50px;
            top: 0;
            -ms-transform: translateY(0%);
            -webkit-transform: translateY(0%);
            transform:translateY(0%)
        }

        .cb_service_item_list .image_wrap {
            position: absolute;
            top: 0;
            left:0
        }

        .cb_service_item_list .item a:after {
            width:100%
        }

        .cb_service_item_list .desc {
            line-height: 2;
            margin-top:20px
        }

        .cb_service_item_list .bottom_title {
            margin:23px 0 0
        }

        .cb_service_item_list .bottom_title:after {
            font-size:12px
        }

        .cb_service_bottom {
            padding:40px
        }

        .cb_service_list.cb_content:last-of-type .cb_service_bottom {
            padding-bottom:40px
        }
    }

    .cb_news_list {
        width: auto;
        padding: 90px 60px 100px;
        border:none
    }

    @media screen and (max-width: 950px) {
        .cb_news_list {
            padding:90px 40px 100px
        }
    }

    @media screen and (max-width: 750px) {
        .cb_news_list {
            padding:32px 20px 35px
        }

        .cb_news_list.no_archive_button {
            padding-bottom: 0;
            margin-bottom:-1px
        }

        .cb_news_list.no_archive_button + .white_content {
            padding-top:40px !important
        }

        .cb_news_list .news_category_list {
            margin:35px auto 30px
        }

        .cb_news_list .design_button {
            margin-top: 40px;
            margin-bottom:5px
        }

        .cb_news_list .news_list {
            margin:0 -20px
        }

        .cb_news_list .no_category_list {
            margin-top:35px
        }
    }

    .cb_project_list {
        width: auto;
        padding: 90px 0 100px;
        border:none
    }

    .cb_project_list .project_list {
        margin:60px 0 -70px
    }

    .cb_project_list .cb_desc {
        margin:55px 60px 0
    }

    @media screen and (max-width: 950px) {
        .cb_project_list .cb_desc {
            margin:55px 40px 0
        }
    }

    @media screen and (max-width: 750px) {
        .cb_project_list {
            padding:40px 0 40px
        }

        .cb_project_list .project_list {
            margin:30px 0 -10px
        }

        .cb_project_list .cb_desc {
            margin:25px 20px 0
        }

        .cb_project_list .design_button {
            margin-top:40px
        }
    }

    .cb_free_space.type1 {
        width: auto;
        padding: 0 60px;
        border:none
    }

    .cb_free_space.type2 {
        width:auto
    }

    @media screen and (max-width: 950px) {
        .cb_free_space.type1 {
            padding:0 40px
        }
    }

    @media screen and (max-width: 750px) {
        .cb_free_space.type1 {
            padding:0 20px
        }
    }

    @media screen and (max-width: 750px) {
        .cb_free_space .index_free_design_content .catch {
            font-size: 20px;
            margin:0 0 17px
        }

        .cb_free_space .index_free_design_content img {
            display: block;
            margin: 25px auto 0;
            max-width:250px
        }
    }

    #company_archive_top {
        padding: 0 0 1px;
        width: auto;
        border:none
    }

    #company_archive_bottom_inner {
        padding: 70px 0 100px;
        width: auto;
        border:none
    }

    @media screen and (max-width: 950px) {
        #company_list {
            margin:0 40px -40px
        }

        #company_list .image_wrap {
            height:200px
        }

        #company_list .title {
            padding:0 40px
        }

        #company_list .catch {
            padding:35px 40px
        }
    }

    @media screen and (max-width: 750px) {
        #company_archive_top .square_headline.inview {
            top:-20px
        }

        #company_archive_top .square_headline.inview.animate {
            top:-60px
        }

        #company_archive_bottom_inner {
            padding:40px 0
        }

        #company_archive_bottom .top_catch {
            margin:-5px 0 33px
        }

        #company_list {
            display: block;
            margin:0 20px -40px
        }

        #company_list .item {
            width: 100%;
            margin:0
        }

        #company_list .title {
            padding:0 30px
        }

        #company_list .catch {
            padding:15px 30px 32px
        }
    }

    @media screen and (max-width: 550px) {
        #company_list .image_wrap {
            height:160px
        }
    }

    @media screen and (max-width: 750px) {
        .single_company_catch {
            font-size: 20px;
            margin:-5px 0 35px
        }
    }

    @media screen and (max-width: 750px) {
        .philosophy_image1 {
            margin: 0 auto;
            display: block;
            padding: 14px 0 7px;
            max-width:240px !important
        }
    }

    @media screen and (max-width: 750px) {
        .outline_table {
            margin: 33px 0 0 !important;
            font-size:14px
        }

        .outline_table th {
            width: 90px !important;
            padding:0 !important
        }
    }

    @media screen and (max-width: 750px) {
        .history_table {
            font-size: 14px;
            margin:33px 0 0 !important
        }

        .history_table .year {
            width: 78px !important;
            font-size:14px
        }

        .history_table .month {
            width:50px !important
        }
    }

    @media screen and (max-width: 750px) {
        #access_map {
            margin:33px -20px 0
        }

        .qt_google_map {
            height:320px !important
        }

        .qt_google_map .qt_googlemap_embed {
            height:320px !important
        }

        #access_map .qt_google_map .pb_googlemap_custom-overlay-inner {
            top: -84px;
            left: -50px;
            width: 90px !important;
            height:90px !important
        }

        #access_info {
            margin: 35px 0 -7px;
            text-align:center
        }

        #access_info .headline {
            font-size: 16px;
            margin:0 0 6px
        }

        #access_info .link a {
            padding:6px 0
        }
    }

    @media screen and (max-width: 750px) {
        #partner_list {
            display: block;
            border: none;
            margin:33px -20px -40px
        }

        #partner_list .item {
            width: 100%;
            height: auto;
            border: none;
            border-top: 1px solid #ddd;
            padding:50px 40px 35px
        }

        #partner_list .item img {
            margin:0 auto
        }

        #partner_list .item:nth-child(1) img {
            margin-top:auto
        }

        #partner_list .item .image {
            margin-bottom:50px
        }

        #partner_list .item p {
            position: relative;
            bottom: auto;
            padding:0
        }
    }

    #project_archive {
        padding: 0 0 100px;
        width: auto;
        border:none
    }

    .project_list {
        margin:0
    }

    @media screen and (max-width: 950px) {
        .project_list .image_wrap {
            height:250px
        }

        .project_list .category {
            margin-left:40px
        }

        .project_list .title {
            padding:0 40px
        }

        .project_list .desc {
            margin:20px 40px 0
        }
    }

    @media screen and (max-width: 750px) {
        #project_archive {
            padding-bottom:40px
        }

        body.no_page_nav #project_archive {
            padding-bottom:0
        }

        #project_archive .square_headline.inview {
            top:-20px
        }

        #project_archive .square_headline.inview.animate {
            top:-60px
        }

        .project_list {
            margin: 0;
            display:block
        }

        .project_list .item {
            width: 100%;
            margin:0 0 33px
        }

        .project_list .category {
            font-size: 14px;
            height: 50px;
            line-height: 50px;
            margin-left:20px
        }

        .project_list .title {
            padding: 0 20px;
            bottom:15px
        }

        .project_list .desc {
            line-height: 2;
            max-height: 4em;
            margin:13px 20px 0
        }
    }

    @media screen and (max-width: 550px) {
        .project_list .image_wrap {
            height:205px
        }
    }

    #related_project .design_headline2 {
        margin:0 0 70px !important
    }

    @media screen and (max-width: 950px) {
        #project_title_area .image {
            height:350px
        }
    }

    @media screen and (max-width: 750px) {
        #project_title_area {
            margin:0 -20px 30px
        }

        #project_title_area .category {
            height: 50px;
            line-height: 50px;
            margin:0 0 0 20px
        }

        #project_title_area .image_wrap {
            width: 100%;
            position: relative;
            margin: 0 0 5px;
            padding-top:57%
        }

        #project_title_area .image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            margin:0
        }

        #project_title_area .title {
            border: none;
            border-bottom: 1px solid #ddd;
            padding:20px
        }

        #related_project {
            margin:35px 0 -18px
        }

        #related_project .design_headline2 {
            font-size: 16px !important;
            margin:0 0 40px !important
        }

        #related_project .post_list {
            margin:0 30px
        }

        #related_project .item {
            width: calc(50% - 9px);
            margin:0 18px 18px 0
        }

        #related_project .image_wrap {
            margin: 0 0 12px;
            height:120px
        }

        #related_project .title {
            font-size: 14px;
            max-height:4.8em
        }

        #related_project .title span {
            -webkit-line-clamp:3
        }
    }

    @media screen and (max-width: 550px) {
        #related_project .post_list {
            margin:0
        }

        #related_project .image_wrap {
            height:85px
        }
    }

    #service_archive {
        padding: 0 0 100px;
        width: auto;
        border:none
    }

    #service_list {
        margin:0
    }

    #service_list .content_inner {
        padding:50px
    }

    @media screen and (max-width: 950px) {
        #service_list .item {
            height:500px
        }

        #service_list .content {
            height: 100%;
            width:100%
        }
    }

    @media screen and (max-width: 750px) {
        #service_archive {
            padding: 0;
            margin-bottom:-1px
        }

        #service_list {
            margin:0
        }

        #service_archive .square_headline.inview {
            top:-20px
        }

        #service_archive .square_headline.inview.animate {
            top:-60px
        }

        #service_list .content {
            position:relative
        }

        #service_list .content_inner {
            padding: 35px 50px 50px;
            position: relative;
            top: auto;
            -ms-transform: translateY(0%);
            -webkit-transform: translateY(0%);
            transform:translateY(0%)
        }

        #service_list .item {
            height:auto
        }

        #service_list .catch {
            margin-top:20px
        }

        #service_list .desc {
            line-height: 2;
            margin-top: 18px;
            max-height:6em
        }

        #service_list .design_button {
            margin:23px 0 0
        }
    }

    @media screen and (max-width: 550px) {
        #service_list .design_button a {
            width:100%
        }
    }

    #post_title2 {
        padding-right: 0;
        margin:-40px 0 60px
    }

    #service_banner .design_headline2 {
        margin:0 0 60px !important
    }

    #service_banner {
        margin:50px 0 0
    }

    @media screen and (max-width: 950px) {
        #service_banner .content_inner {
            padding:0 40px
        }
    }

    @media screen and (max-width: 750px) {
        #post_title2 {
            padding-right: 20px;
            margin: -20px -20px 40px 0;
            height:auto
        }

        #post_title2 .title {
            height: auto;
            padding:12px 0
        }

        #post_image2_wrap {
            width: calc(100% + 40px);
            position: relative;
            margin: 0 -20px 33px;
            padding-top:64%
        }

        #post_image2 {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            margin:0
        }
		#post_image3_wrap {
            width: calc(100% + 40px);
            position: relative;
            margin: 0 -20px 33px;
            padding-top:64%
        }
		#post_image3 {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            margin:0
        }
		#post_image4 {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            margin:0
        }

        #service_banner {
            margin:33px 0 0
        }

        #service_banner .design_headline2 {
            font-size: 16px !important;
            margin:0 -20px 40px !important
        }

        #service_banner .item a {
            height: auto;
            display:block
        }

        #service_banner .image_wrap {
            width: 100%;
            height:170px
        }

        #service_banner .content {
            width:100%
        }

        #service_banner .content_inner {
            padding: 20px 30px;
            position: relative;
            top: auto;
            -ms-transform: translateY(0%);
            -webkit-transform: translateY(0%);
            transform:translateY(0%)
        }

        #service_banner .desc {
            line-height: 2;
            max-height: 6em;
            margin:3px 0 0
        }
    }

    @media screen and (max-width: 750px) {
        #tcd_lp_page_table {
            font-size: 14px;
            margin:0 0 40px
        }

        #tcd_lp_page_table th {
            width: 90px !important;
            padding:0
        }
    }

    @media screen and (max-width: 750px) {
        .faq_list {
            margin:0 0 40px
        }

        .faq_list .question {
            font-size: 14px !important;
            padding:15px 45px 11px 20px !important
        }

        .faq_list .question:before {
            right: 17px;
            top: 0;
            bottom: 0;
            width: 9px;
            height: 1px;
            margin:auto
        }

        .faq_list .question:after {
            right: 21px;
            top: 0;
            bottom: 0;
            width: 1px;
            height: 9px;
            margin:auto
        }

        .faq_list .answer {
            padding:15px 20px 15px
        }

        .faq_list .answer p {
            line-height:2
        }
    }

    #news_archive {
        padding: 0 0 100px;
        width:auto
    }

    .news_category_list {
        margin:0 60px 100px
    }

    .news_list {
        margin:0 60px
    }

    @media screen and (max-width: 950px) {
        .news_category_list {
            margin:0 40px 100px
        }

        .news_list {
            margin:0 40px
        }
    }

    @media screen and (max-width: 750px) {
        #news_archive {
            padding:0 0 40px
        }

        body.no_page_nav #news_archive {
            padding-bottom:0
        }

        #news_archive .square_headline.inview {
            top:-20px
        }

        #news_archive .square_headline.inview.animate {
            top:-60px
        }

        .news_category_list, .news_category_sort_button {
            margin:0 20px 30px
        }

        .news_category_list li, .news_category_sort_button li {
            font-size: 14px;
            margin:0 10px 10px
        }

        .news_category_list li a, .news_category_sort_button li a {
            padding-top:15px
        }

        .news_list {
            margin:0
        }

        .news_list .item {
            height: auto;
            border-left: none;
            border-right: none;
            margin: 0 0 -1px;
            padding: 20px 20px 15px;
            display:block
        }

        .news_list .date {
            width: auto;
            margin: 0 10px 0 0;
            height: 25px;
            line-height: 26px;
            font-size: 12px;
            float:left
        }

        .news_list .category {
            font-size: 11px;
            margin-right: 0;
            min-width: 80px;
            height: 25px;
            line-height: 27px;
            padding:0 15px
        }

        .news_list .title {
            text-overflow: clip;
            white-space: normal;
            max-height: 3.6em;
            margin-top: 10px;
            clear:both
        }

        .news_list .title a {
            overflow: visible;
            text-overflow: clip;
            white-space: normal;
            display: -webkit-inline-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp:2
        }
    }

    #single_news_inner {
        width: auto;
        margin: 0 auto;
        border: none;
        padding:60px 0 100px
    }

    #single_news #article {
        width: 770px;
        padding:40px
    }

    #news_next_prev_post {
        margin: 40px auto 0;
        width:770px
    }

    #recent_news {
        width: 770px;
        margin:70px auto 0
    }

    #recent_news .news_list {
        margin:0
    }

    #recent_news .headline {
        margin-bottom:40px
    }

    #recent_news .design_button {
        margin-top:40px
    }

    @media screen and (max-width: 900px) {
        #single_news_inner {
            padding:40px 0
        }

        #single_news #article {
            width: auto;
            margin:0 40px
        }

        #news_next_prev_post {
            margin: 40px 40px 0;
            width:auto
        }

        #recent_news {
            width: auto;
            margin:70px 40px 0
        }

        #recent_news .design_button {
            margin-bottom:40px
        }
    }

    @media screen and (max-width: 750px) {
        #single_news {
            background:#fff
        }

        #single_news_inner {
            padding:0
        }

        #single_news #article {
            margin: 0;
            padding:20px
        }

        #news_next_prev_post {
            margin:20px 20px 0
        }

        #news_next_prev_post .item {
            height:50px
        }

        #news_next_prev_post .item:first-of-type {
            border: none;
            margin-right:-1px
        }

        #news_next_prev_post a {
            border: 1px solid #ddd;
            text-align: center;
            display: block;
            width: 100%;
            height: 50px;
            line-height: 50px;
            -webkit-box-sizing: border-box;
            box-sizing:border-box
        }

        #news_next_prev_post .title_area {
            display: block;
            position: relative;
            left: auto;
            top: auto;
            -ms-transform: translateY(0%);
            -webkit-transform: translateY(0%);
            transform:translateY(0%)
        }

        #news_next_prev_post .prev_post .title_area {
            padding:0
        }

        #news_next_prev_post .next_post .title_area {
            padding:0
        }

        #news_next_prev_post .title {
            display:none
        }

        #news_next_prev_post .nav {
            display: block;
            font-size:14px
        }

        #news_next_prev_post a:before {
            content: '\e90f';
            font-family: 'design_plus';
            font-size: 11px;
            top: 1px;
            left: 15px;
            position: absolute;
            background: 0 0;
            width: auto;
            height: auto;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing:grayscale
        }

        #news_next_prev_post .next_post a:before {
            content: '\e910';
            left: auto;
            right:15px
        }

        #recent_news {
            width: auto;
            margin:40px 0 0
        }

        #recent_news .headline {
            margin-bottom:38px
        }
    }

    #blog_archive {
        padding: 0 0 100px;
        width: auto;
        border:none
    }

    #blog_list .image_link {
        width: 50%;
        padding-right: 30px;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    #blog_list .content {
        width: 50%;
        padding-left:30px
    }

    @media screen and (max-width: 950px) {
        #blog_list .item {
            height: 300px;
            padding:40px
        }

        #blog_list .image_link {
            padding-right: 20px;
            height:220px
        }

        #blog_list .content {
            padding-left: 20px;
            height:220px
        }
    }

    @media screen and (max-width: 750px) {
        #blog_archive {
            padding:0 0 40px
        }

        body.no_page_nav #blog_archive {
            padding-bottom: 0;
            margin-bottom:-1px
        }

        #blog_archive .square_headline.inview {
            top:-20px
        }

        #blog_archive .square_headline.inview.animate {
            top:-60px
        }

        #blog_list {
            display:block
        }

        #blog_list .item {
            height: auto;
            padding:20px 20px 12px
        }

        #blog_list .image_link {
            width: 100%;
            padding: 0;
            margin:0 0 20px
        }

        #blog_list .content {
            width: 100%;
            padding: 0;
            height:auto
        }

        #blog_list .content_inner {
            position: relative;
            top: auto;
            -ms-transform: translateY(0%);
            -webkit-transform: translateY(0%);
            transform:translateY(0%)
        }

        #blog_list .meta {
            margin-bottom:12px
        }

        #blog_list .meta li:first-of-type {
            margin-right:10px
        }

        #blog_list .category a, #blog_list .pr_label {
            font-size: 11px;
            min-width: 80px;
            height: 25px;
            line-height: 26px;
            padding:0 15px
        }

        #blog_list .date {
            font-size: 12px;
            height: 25px;
            line-height:26px
        }

        #blog_list .desc {
            display: none;
            margin:7px 0 0
        }
    }

    @media screen and (max-width: 550px) {
        #blog_list .image_link {
            height:180px
        }
    }

    body.author .author_profile {
        width: auto;
        margin: 0 0 60px;
        padding:60px 60px 0
    }

    @media screen and (max-width: 950px) {
        body.author .author_profile {
            margin: 0 0 40px;
            padding:40px 40px 0
        }
    }

    @media screen and (max-width: 750px) {
        body.author .author_profile {
            padding:40px 20px 0
        }

        body.author .author_profile .avatar_area {
            width: 90px;
            height:90px
        }

        body.author .author_profile .info {
            -webkit-width: calc(100% - 90px);
            width:calc(100% - 90px)
        }
    }

    @media screen and (max-width: 750px) {
        .page_navi {
            margin:40px 20px 1px
        }

        .page_navi li {
            margin-bottom:-1px
        }
    }

    #page_header {
        height:500px
    }

    #page_header_inner {
        width: 100% !important;
        padding: 0 60px;
        webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    @media screen and (max-width: 750px) {
        #page_header {
            height:350px
        }

        #page_header_inner {
            padding:0 30px
        }

        #page_header .desc {
            font-size: 15px;
            margin:10px 0 -5px
        }

        #page_header .bg_image.pc {
            display:none
        }

        #page_header .bg_image.mobile {
            display:block
        }
    }

    @media screen and (max-width: 550px) {
        #page_header {
            height:250px
        }
    }

    @media screen and (max-width: 750px) {
        #archive_square_headline {
            width: 120px;
            height: 120px;
            top: -60px;
            margin-bottom:-20px
        }
    }

    @media screen and (max-width: 750px) {
        .archive_desc {
            line-height: 2;
            margin: -25px 0 34px;
            text-align: center;
            padding:0 20px
        }
    }

    #bread_crumb ul {
        width: auto;
        padding:0 20px
    }

    #bread_crumb li {
        margin: 0 5px 0 0;
        padding:0 15px 0 0
    }

    #bread_crumb li:after {
        line-height: 46px;
        height: 45px;
        bottom:-16px
    }

    #bread_crumb li a {
        height: 45px;
        line-height:46px
    }

    #header {
        height: 60px;
        webkit-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: opacity .35s ease;
        transition:opacity .35s ease
    }

    .use_mobile_header_fix #header:after {
        content: '';
        display: block;
        width: 100%;
        height: 60px;
        background: #000;
        top: -60px;
        left: 0;
        position: absolute;
        z-index: 1;
        -webkit-transition: all .6s cubic-bezier(.22, 1, .36, 1) 0s;
        transition:all .6s cubic-bezier(.22, 1, .36, 1) 0s
    }

    #header.active:after {
        top:0
    }

    .open_menu #header {
        opacity:0
    }

    .mobile body.header_fix_mobile #header {
        position: fixed;
        top: 0;
        left: 0;
        -webkit-animation: shadow_animation .7s esase forwards .2s;
        animation:shadow_animation .7s ease forwards .2s
    }

    .mobile body.header_fix_mobile #header:after {
        top:0 !important
    }

    .mobile body.hide_global_menu.header_fix_mobile #header {
        position:absolute
    }

    .mobile body.hide_global_menu.header_fix_mobile #header:after {
        display:none
    }

    .mobile body.single.header_fix_mobile {
        padding-top:60px
    }

    .mobile body.single.header_fix_mobile #header:before {
        display:none
    }

    .mobile body.single.header_fix_mobile #header.active:after {
        display:block
    }

    .mobile body.hide_header_image.header_fix_mobile {
        padding-top:60px
    }

    .mobile body.hide_header_image.header_fix_mobile #header.active:after {
        display:block
    }

    .mobile body.hide_header_logo.hide_global_menu.hide_header_image.header_fix_mobile {
        padding-top:0
    }

    #header_logo a {
        height: 60px;
        line-height: 60px;
        padding:0 5px !important
    }

    #header_logo .logo_image.pc {
        display:none
    }

    #header_logo .logo_image.mobile {
        display:block
    }

    #index_header_logo {
        left: 20px;
        top:20px
    }

    @media screen and (max-width: 750px) {
        #index_header_logo .logo_image.mobile {
            display:block
        }

        #index_header_logo .logo_image.pc {
            display:none
        }
    }

    #global_menu_button {
        position: absolute;
        z-index: 2;
        right: 0;
        bottom: 0;
        display: inline-block;
        font-size: 11px;
        width: 60px;
        height: 60px;
        line-height: 60px;
        text-decoration: none;
        text-align:center
    }

    #global_menu_button span {
        width: 22px;
        height: 2px;
        background: #fff;
        display: block;
        position: absolute;
        -webkit-transition-property: background-color;
        -webkit-transition-duration: .2s;
        -webkit-transition-timing-function: ease;
        transition-property: background-color;
        transition-duration: .2s;
        transition-timing-function: ease;
        -webkit-transition: all .3s ease;
        transition:all .3s ease
    }

    #global_menu_button span:nth-child(1) {
        top: 24px;
        left:20px
    }

    #global_menu_button span:nth-child(2) {
        top: 30px;
        left:20px
    }

    #global_menu_button span:nth-child(3) {
        top: 36px;
        left:20px
    }

    #global_menu_button:hover span {
        opacity:.5
    }

    body.home #global_menu_button {
        opacity:0
    }

    body.home #global_menu_button.animate {
        -webkit-animation: opacityAnimation 1s ease forwards 0s;
        animation:opacityAnimation 1s ease forwards 0s
    }

    body.stop_index_slider_animation #global_menu_button {
        opacity:1
    }

    body.hide_global_menu #global_menu_button {
        display:none !important
    }

    #header.active #global_menu_button span {
        background:#000 !important
    }

    body.single #global_menu_button span {
        background:#000 !important
    }

    body.hide_header_image #global_menu_button span, body.no_index_header_content #global_menu_button span {
        background:#000
    }

    .megamenu {
        display:none
    }

    #header #global_menu {
        display:none
    }

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

    #mobile_menu ul {
        margin:0
    }

    #mobile_menu li ul {
        display:none
    }

    #mobile_menu a {
        position: relative;
        display: block;
        margin: 0;
        padding: 0 60px 0 20px;
        height: 60px;
        line-height: 60px;
        overflow: hidden;
        text-decoration: none;
        color: #fff;
        font-size: 13px;
        border-bottom: 1px solid #ddd;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        visibility:visible
    }

    #mobile_menu a:hover {
        color:#fff
    }

    #mobile_menu ul ul a {
        padding-left:32px
    }

    #mobile_menu ul ul ul a {
        padding-left:47px
    }

    #mobile_menu ul ul ul ul a {
        padding-left:60px
    }

    #mobile_menu li {
        position:relative
    }

    #mobile_menu .child_menu_button {
        display: block;
        position: absolute;
        text-align: center;
        width: 60px;
        height: 60px;
        right: 0;
        top: -1px;
        z-index: 9;
        cursor:pointer
    }

    #mobile_menu .child_menu_button .icon:before {
        font-family: 'design_plus';
        content: '\e90e';
        color: #fff;
        text-align: center;
        display: block;
        font-size: 12px;
        position: absolute;
        right: 24px;
        top:29px
    }

    #mobile_menu .child_menu_button.active .icon:before, #mobile_menu .child_menu_button:hover .icon:before {
        color: #fff;
        border-color:#fff
    }

    #mobile_menu li.open > .child_menu_button .icon:before {
        content: '\e911'
    }

    #mobile_menu .child_menu_button:hover {
        background:rgba(0, 0, 0, .2)
    }

    #drawer_menu .close_button {
        display: block;
        width: 100%;
        height: 60px;
        position: relative;
        cursor: pointer;
        border-bottom:1px solid rgba(255, 255, 255, .2)
    }

    #drawer_menu .close_button:before {
        font-family: 'design_plus';
        color: #fff;
        font-size: 18px;
        display: block;
        content: '\e91a';
        position: absolute;
        top: 24px;
        right: 17px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing:grayscale
    }

    #header_search {
        display:none
    }

    #footer_search {
        max-width: 300px;
        height: 45px;
        position: relative;
        overflow: hidden;
        background: rgba(255, 255, 255, .2);
        margin:30px auto
    }

    #footer_search .input_area input {
        width: calc(100% - 45px);
        color: #fff;
        height: 45px;
        padding: 0 10px;
        border: none;
        background: 0 0;
        z-index: 1;
        position: absolute;
        left: 0;
        top: 0;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    #footer_search:hover .input_area input, #footer_search.active .input_area input {
        left:0
    }

    #footer_search .button input {
        background: 0 0;
        width: 45px;
        height: 45px;
        border: none;
        position: absolute;
        right: 0;
        pointer-events: none;
        z-index:2
    }

    #footer_search .button label {
        background: 0 0;
        display: block;
        width: 45px;
        height: 45px;
        position: absolute;
        top: 0;
        right: 0;
        cursor: pointer;
        z-index:2
    }

    #footer_search .button label:before {
        font-family: 'design_plus';
        color: #fff;
        font-size: 18px;
        content: '\e915';
        display: block;
        position: relative;
        top: 16px;
        left: 16px;
        -webkit-transition: all .2s ease;
        transition:all .2s ease
    }

    #footer_search .button label:hover:before {
        color:#0b8a97
    }

    @media screen and (max-width: 450px) {
        #footer_search {
            margin:30px 20px
        }
    }

    #mobile_banner img {
        display: block;
        margin: 0 auto;
        max-width: 100%;
        height:auto
    }

    #mobile_banner .banner {
        margin:20px
    }

    #header_message {
        padding: 10px 0;
        z-index:2000
    }

    #header_message .post_content {
        width: auto !important;
        margin:0 20px !important
    }

    #header_message.show_close_button .post_content {
        margin:0 40px !important
    }

    @media screen and (max-width: 750px) {
        #header_message .post_content {
            line-height:1.8
        }

        #header_message.show_close_button .post_content {
            margin:0 35px !important
        }
    }

    @media screen and (max-width: 950px) {
        #post_image {
            height:350px
        }
    }

    @media screen and (max-width: 750px) {
        #post_title {
            margin-bottom:20px
        }

        #post_title .category {
            font-size: 11px;
            margin: 0 0 10px;
            min-width: 80px;
            height: 25px;
            line-height: 25px;
            padding:0 15px
        }

        #post_title .date {
            font-size:12px
        }

        #post_title .update {
            font-size: 12px;
            position: relative;
            padding: 0 0 0 29px;
            color: #999;
            margin:0 0 0 10px
        }

        #post_title .update:before {
            font-size: 14px;
            top: 0;
            left:10px
        }

        #post_title .meta_top {
            margin:10px 0 0
        }

        #post_image {
            width: calc(100% + 40px);
            height: 300px;
            margin:0 -20px 40px
        }

        #post_image_wrap {
            width: calc(100% + 40px);
            position: relative;
            margin: 0 -20px 33px;
            padding-top:64%
        }

        #post_image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            margin:0
        }
    }

    @media screen and (max-width: 750px) {
        #single_share_top {
            margin:0 0 40px
        }

        #single_share_bottom {
            margin:40px 0 0
        }

        #single_share_bottom .share-btm {
            margin-bottom: 0 !important;
            padding:0
        }

        #single_share_top .mt10, #single_share_top .mt10 {
            margin:0 !important
        }

        #single_share_bottom .mb45, #single_share_bottom .mb45 {
            margin:0 !important
        }

        .share-type1 ul {
            text-align: center;
            margin-bottom:-5px !important
        }

        .share-type3 ul {
            text-align: center;
            margin-bottom:-5px !important
        }

        .share-type2 ul.type2 {
            text-align: center;
            margin-bottom:-5px !important
        }

        .share-type4 ul.type4 {
            text-align: center;
            margin-bottom:-5px !important
        }

        .sns_default_top {
            text-align: center;
            margin-bottom:-5px !important
        }
    }

    @media screen and (max-width: 750px) {
        #single_copy_title_url_top {
            margin:0 0 30px
        }

        #single_copy_title_url_bottom {
            margin:40px 0 0
        }

        .single_copy_title_url_btn {
            border-width: 2px;
            font-size: 12px;
            line-height: 46px;
            min-width:250px
        }
    }

    #post_meta_bottom {
        padding:15px 20px 13px
    }

    #post_meta_bottom li {
        display: block;
        margin: 0 0 5px;
        padding: 0 0 0 25px;
        border-right:none
    }

    #post_meta_bottom li:last-child {
        border: none;
        margin:0
    }

    #post_meta_bottom li:before {
        line-height:1.5
    }

    @media screen and (max-width: 750px) {
        #post_meta_bottom {
            margin:40px 0 0
        }
    }

    @media screen and (max-width: 750px) {
        #post_pagination {
            padding:5px 0 0
        }

        #post_pagination a, #post_pagination p {
            font-size: 12px;
            width: 45px;
            height: 45px;
            line-height:45px
        }

        #p_readmore {
            padding: 5px 0 0;
            margin:0
        }
    }

    @media screen and (max-width: 750px) {
        .author_profile {
            padding:20px 20px 15px
        }

        body.single .author_profile {
            margin:40px 0 0
        }

        .author_profile .avatar_area {
            width: 90px;
            height:90px
        }

        .author_profile .info {
            -webkit-width: calc(100% - 90px);
            width:calc(100% - 90px)
        }

        .author_profile .info_inner {
            padding:0 0 0 20px
        }

        .author_profile .name {
            font-size: 18px;
            margin:0 0 7px
        }

        .author_profile .author_link {
            margin-top:5px
        }

        .author_profile .desc {
            font-size:12px !important
        }

        body.single .author_profile .desc {
            line-height:2
        }
    }

    @media screen and (max-width: 750px) {
        #single_banner_top {
            width:auto
        }

        #single_banner_bottom {
            width: auto;
            margin:40px 0 -5px
        }

        #single_banner_shortcode {
            padding:0 0 20px
        }
    }

    #next_prev_post {
        margin: 40px 0 0;
        padding-right:0
    }

    @media screen and (max-width: 750px) {
        #next_prev_post {
            border: none;
            margin:40px 0 0
        }

        #next_prev_post .item {
            height: 52px;
            margin: 0;
            padding:0 !important
        }

        #next_prev_post .item:first-of-type {
            border-right:none
        }

        #next_prev_post .item:last-of-type {
            margin-left:-1px
        }

        #next_prev_post a {
            height: 50px;
            line-height: 50px;
            border: 1px solid #ddd;
            position: relative;
            background: #fff;
            -webkit-box-sizing: border-box;
            box-sizing:border-box
        }

        #next_prev_post .image_wrap {
            display:none
        }

        #next_prev_post .title_area {
            position: relative;
            bottom: auto;
            left: auto;
            color: #000;
            padding:0
        }

        #next_prev_post .title {
            display:none
        }

        #next_prev_post .nav {
            display: block;
            text-align:center
        }

        #next_prev_post a:before {
            content: '\e90f';
            font-family: 'design_plus';
            font-size: 11px;
            top: 1px;
            left: 15px;
            position: absolute;
            background: 0 0;
            width: auto;
            height: auto;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing:grayscale
        }

        #next_prev_post .next_post a:before {
            content: '\e910';
            left: auto;
            right:15px
        }
    }

    #related_post {
        margin: 70px 0 -20px;
        padding:0
    }

    #related_post .design_headline2 {
        margin:0 0 70px !important
    }

    @media screen and (max-width: 750px) {
        #related_post {
            margin:40px 0 -20px
        }

        #related_post .design_headline2 {
            font-size: 18px;
            margin:0 -20px 40px !important
        }

        #related_post .item {
            width: calc(50% - 4px);
            margin:0 8px 17px 0
        }

        #related_post .item:nth-of-type(3n) {
            margin-right:8px
        }

        #related_post .item:nth-of-type(2n) {
            margin-right:0
        }

        #related_post .image_wrap {
            margin: 0 0 13px;
            height:120px
        }

        #related_post .title {
            max-height:4.8em
        }

        #related_post .title span {
            -webkit-line-clamp:3
        }
    }

    @media screen and (max-width: 550px) {
        #related_post .image_wrap {
            height:90px
        }
    }

    #page_404_header .content {
        padding:0 30px
    }

    @media screen and (max-width: 750px) {
        #footer_top {
            padding:40px 0 35px
        }

        #footer_logo .logo_image.pc {
            display:none
        }

        #footer_logo .logo_image.mobile {
            display:block
        }
    }

    #footer_sns {
        margin: 30px 0 0;
        position: relative;
        right: auto;
        top:auto
    }

    @media screen and (max-width: 750px) {
        #footer_sns {
            margin:30px 0 0
        }
    }

    #footer_menu {
        width:auto
    }

    #footer_menu .footer_menu {
        padding: 0 60px 40px;
        -ms-flex: 1 0 auto;
        -webkit-flex: 1 0 auto;
        flex: 1 0 auto;
        width: 50%;
        border: none;
        border-right:1px solid #ddd
    }

    #footer_menu .footer_menu:nth-child(2n) {
        border-right:none
    }

    @media screen and (max-width: 950px) {
        #footer_menu .footer_menu {
            padding:0 40px 23px
        }
    }

    @media screen and (max-width: 750px) {
        #footer_menu .footer_menu {
            padding: 0 20px 20px;
            border:none
        }

        #footer_menu .footer_menu li:first-of-type {
            font-size: 14px;
            margin:0 0 13px
        }
		#footer_menu .footer_menu li {
            font-size: 11px;
            margin:0 0 13px
        }
    }

    #footer_menu_bottom {
        height: auto;
        line-height:inherit
    }

    #footer_menu_bottom ul {
        padding:14px 0
    }

    #footer_menu_bottom li {
        line-height: 1;
        font-size: 14px;
        display: inline-block;
        margin:0 20px
    }

    #footer_menu_bottom li a {
        display: block;
        padding:10px 0
    }

    @media screen and (max-width: 950px) {
        #footer_menu_bottom li {
            font-size: 12px;
            margin:0 10px
        }
    }

    #footer_banner .item {
        height:140px
    }

    #footer_banner .title_area {
        padding:0 30px
    }

    @media screen and (max-width: 950px) {
        #footer_banner .item {
            height: 140px;
            width: 50%;
            -ms-flex: 1 0 auto;
            -webkit-flex: 1 0 auto;
            flex:1 0 auto
        }

        #footer_banner .title_area {
            padding:0 40px
        }
    }

    @media screen and (max-width: 750px) {
        #footer_banner .item {
            height:100px
        }

        #footer_banner .title_area {
            padding:0 20px
        }

        #footer_banner .sub_title {
            margin-top:10px
        }
    }

    @media screen and (max-width: 750px) {
        #copyright {
            line-height: 50px;
            height:50px
        }
    }

    #return_top2 {
        display:none
    }

    #return_top {
        display:block !important
    }

    @media screen and (max-width: 750px) {
        #return_top a {
            height: 50px;
            width: 50px;
            line-height:50px
        }
    }

    body.show_footer_bar {
        padding-bottom:0
    }

    body.show_footer_bar #return_top.active {
        -webkit-transform: translate3d(0, -50px, 0);
        transform:translate3d(0, -50px, 0)
    }

    body.home.show_footer_bar #container {
        padding-bottom:0
    }

    @media screen and (max-width: 950px) {
        body.show_footer_bar #footer_button.active {
            -webkit-transform: translate3d(0, -50px, 0);
            transform:translate3d(0, -50px, 0)
        }
    }

    .widget_content {
        width: calc(50% - 20px);
        margin: 0 40px 40px 0;
        padding: 0;
        border:none
    }

    .widget_content:nth-child(2n) {
        margin-right:0
    }

    .widget_headline {
        background: #00729f;
        color: #fff;
        height: 60px;
        line-height: 60px;
        padding:0 20px
    }

    @media screen and (max-width: 900px) {
        .widget_content, .widget_content:nth-child(2n) {
            width: auto;
            margin:0 0 40px
        }

        .widget_content:last-of-type {
            margin:0
        }
    }

    @media screen and (max-width: 550px) {
        .widget_content {
            border-top: 1px solid #ddd;
            padding: 40px 20px 0;
            margin:0 -20px 40px !important
        }

        .widget_headline {
            background: 0 0;
            color: #00729f;
            height: inherit;
            line-height: 1;
            padding:0
        }
    }

    .category_list_widget {
        margin-top:0
    }

    .category_list_widget .square_headline {
        height: auto;
        line-height: 1;
        padding: 0 20px;
        position: relative;
        z-index:2
    }

    .category_list_widget .square_headline h3 {
        height: 60px;
        line-height: 60px;
        position: relative;
        top: auto;
        -ms-transform: translateY(0%);
        -webkit-transform: translateY(0%);
        transform: translateY(0%);
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-justify-content: space-between;
        -webkit-justify-content: space-between;
        justify-content:space-between
    }

    .category_list_widget .square_headline .headline {
        font-size:18px
    }

    .category_list_widget .square_headline .sub_headline {
        font-size:12px
    }

    .category_list_widget ul {
        z-index: 1;
        position:relative
    }

    .category_list_widget li a {
        border: 1px solid #ddd;
        padding: 0 20px;
        height: 50px;
        line-height: 50px;
        font-size: 14px;
        margin-top:-1px
    }

    .category_list_widget li li a {
        padding-left:34px
    }

    .category_list_widget li li li a {
        padding-left:48px
    }

    .category_list_widget li a:hover {
        padding-left:30px
    }

    .category_list_widget li li a:hover {
        padding-left:44px
    }

    .category_list_widget li li li a:hover {
        padding-left:58px
    }

    @media screen and (max-width: 550px) {
        .category_list_widget .square_headline h3 {
            height: 50px;
            line-height:50px
        }
    }

    .widget_tab_post_list_button div {
        height: 50px;
        line-height: 50px;
        font-size:14px
    }

    .widget_tab_post_list {
        top: 50px;
        left: 0;
        width:100%
    }

    .widget_tab_post_list .image_wrap {
        width: 100px;
        height:100px
    }

    .widget_tab_post_list .title_area {
        width:calc(100% - 100px)
    }

    @media screen and (max-width: 550px) {
        .widget_tab_post_list {
            top: 90px;
            left: 20px;
            width:calc(100% - 40px)
        }
    }

    .styled_post_list1_widget {
        padding:0
    }

    .styled_post_list1_widget .widget_headline {
        height: 60px;
        line-height: 60px;
        font-size: 18px;
        background: #00729f;
        color: #fff;
        padding: 0 20px;
        border: none;
        margin:0
    }

    .styled_post_list1 li {
        margin: 0;
        border: 1px solid #ddd;
        border-bottom:none
    }

    .styled_post_list1 li:last-child {
        border-bottom:1px solid #ddd
    }

    .styled_post_list1 a {
        padding:20px
    }

    .styled_post_list1 .image_wrap {
        width: 100px;
        height:100px
    }

    .styled_post_list1 .title_area {
        width: calc(100% - 100px);
        height:100px
    }

    @media screen and (max-width: 550px) {
        .styled_post_list1_widget {
            margin:0 -20px -1px !important
        }

        .styled_post_list1 li {
            border: none;
            border-bottom:1px solid #ddd
        }
    }

    .post_slider_widget {
        border: 1px solid #ddd;
        padding: 20px;
        height: 235px;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    .post_slider_nav {
        margin-left:0
    }

    @media screen and (max-width: 550px) {
        .post_slider_widget {
            height: inherit;
            border: none;
            border-top: 1px solid #ddd;
            padding: 40px 20px;
            margin:0 -20px 0 !important
        }
    }

    .tcd_banner_widget .banner_inner {
        border: 1px solid #ddd;
        padding: 20px;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    .tcd_banner_widget .headline {
        font-size:20px
    }

    .tcd_banner_widget .sub_headline {
        font-size:12px
    }

    @media screen and (max-width: 550px) {
        .tcd_banner_widget {
            padding: 20px;
            margin:0 -20px !important
        }

        .tcd_banner_widget .banner_inner {
            border: none;
            padding:0
        }
    }

    @media screen and (max-width: 750px) {
        .p-dropdown__title {
            height: 50px;
            line-height:50px
        }
    }

    @media screen and (max-width: 750px) {
        #searchform {
            height:50px
        }

        #searchform #s {
            height:50px
        }

        #searchform #searchsubmit {
            height:50px
        }

        #searchform .submit_button {
            height:50px
        }

        #searchform .submit_button:before {
            height: 50px;
            line-height:50px
        }
    }

    #comments {
        margin: 70px 0 0;
        padding:0
    }

    #comments .design_headline2 {
        margin:0 0 70px !important
    }

    @media screen and (max-width: 750px) {
        #comments {
            margin:40px 0 0
        }

        #comments .design_headline2 {
            font-size: 18px;
            margin:0 -20px 35px !important
        }
    }

    #comment_tab li a, #comment_tab li p {
        padding: 14px 15px;
        font-size:12px
    }

    @media screen and (max-width: 750px) {
        #comment_tab li a, #comment_tab li p {
            background:#eee
        }
    }

    @media screen and (max-width: 750px) {
        .post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 {
            margin:0 0 5px
        }

        .post_content p {
            line-height:2
        }

        .post_content li, .post_content dt, .post_content dd {
            line-height:1.8
        }

        .post_content td, .post_content th {
            line-height: 1.8;
            padding:14px 20px
        }
    }

    .c-pw__box {
        padding: 20px;
        margin:0 0 20px
    }

    .c-pw__box-label {
        display: block;
        margin: 0 0 15px;
        text-align:center
    }

    .c-pw__box-input {
        width: calc(100% - 160px);
        margin: 0 10px 0 0;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    .c-pw__btn--submit {
        width: 150px;
        min-width: inherit;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    @media screen and (max-width: 750px) {
        .c-pw__box {
            padding:15px
        }

        .c-pw__box-input {
            width: calc(100% - 105px);
            margin-right:5px
        }

        .c-pw__btn--submit {
            width:100px
        }
    }

    .cardlink {
        margin: 30px 0 35px !important;
        padding:15px
    }
}

[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items:flex-start
}

.simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height:inherit
}

.simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index:0
}

.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling:touch
}

.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: auto;
    visibility: visible;
    overflow: auto;
    max-width: 100%;
    max-height:100%
}

.simplebar-content:before, .simplebar-content:after {
    content: ' ';
    display:table
}

.simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events:none
}

.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis:0
}

.simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    overflow: hidden;
    pointer-events: none;
    z-index:-1
}

.simplebar-track {
    z-index: 1;
    position: absolute;
    right: 0;
    bottom: 0;
    pointer-events: none;
    overflow:hidden
}

[data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events:all
}

.simplebar-scrollbar {
    position: absolute;
    right: 2px;
    width: 7px;
    min-height:10px
}

.simplebar-scrollbar:before {
    position: absolute;
    content: '';
    background: #000;
    border-radius: 7px;
    left: 0;
    right: 0;
    opacity: 0;
    transition:opacity .2s linear
}

.simplebar-track .simplebar-scrollbar.simplebar-visible:before {
    opacity: .5;
    transition:opacity 0s linear
}

.simplebar-track.simplebar-vertical {
    top: 0;
    width:11px
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top: 2px;
    bottom:2px
}

.simplebar-track.simplebar-horizontal {
    left: 0;
    height:11px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
    height: 100%;
    left: 2px;
    right:2px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 2px;
    height: 7px;
    min-height: 0;
    min-width: 10px;
    width:auto
}

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
    right: auto;
    left:0
}

.hs-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x:scroll
}

body {
    font-size:16px
}

.common_headline {
    font-size:36px !important
}

@media screen and (max-width: 750px) {
    body {
        font-size:16px
    }

    .common_headline {
        font-size:20px !important
    }
}

body, input, textarea {
    font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif
}

.rich_font, .p-vertical {
    font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight:600
}

.rich_font_type1 {
    font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-weight:600
}

.rich_font_type2 {
    font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight:600
}

.rich_font_type3 {
    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-weight:600
}
.rich_font_type4 {
    font-family: "Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight:600;
	font-size: 22px!important;
}

.square_headline .headline {
    font-size:24px
}

.square_headline .sub_headline {
    font-size:14px
}

@media screen and (max-width: 750px) {
	.rich_font_type4 {
    font-family: "Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight:600;
	font-size: 15px!important;
}

    .square_headline .headline {
        font-size:18px
    }

    .square_headline .sub_headline {
        font-size:12px
    }
}

.pc body.use_header_fix #header:after {
    background:rgba(255, 255, 255, 1)
}

.pc body.use_header_fix #header:hover:after {
    background:rgba(255, 255, 255, 1)
}

#header_logo a {
    background:rgba(41, 66, 102, 1)
}

#header_logo .logo_text {
    color: #fff !important;
    font-size:32px
}

#footer_logo .logo_text {
    font-size:32px
}

@media screen and (max-width: 1201px) {
    #header_logo .logo_text {
        font-size:28px
    }

    #footer_logo .logo_text {
        font-size:14px
    }
}

#global_menu > ul > li > a:hover, body.single #global_menu > ul > li.current-menu-item > a, body.single #global_menu > ul > li.active > a, #header.active #global_menu > ul > li.current-menu-item > a, #header.active #global_menu > ul > li.active > a, body.hide_header_image #global_menu > ul > li.current-menu-item > a, body.no_index_header_content #global_menu > ul > li.current-menu-item > a {
    color:#00729f !important
}

#global_menu ul ul a {
    color: #fff;
    background:#00729f
}

#global_menu ul ul a:hover {
    color: #fff;
    background:#004968
}

#global_menu ul ul li.menu-item-has-children > a:before {
    color:#fff
}

.mobile #header:after {
    background:rgba(255, 255, 255, .8)
}

.mobile #header:hover:after {
    background:rgba(255, 255, 255, 1)
}

.mobile body.home.no_index_header_content #header {
    background:rgba(255, 255, 255, 1)
}

#drawer_menu {
    color: #fff;
    background:#006f9b
}

#drawer_menu a {
    color:#fff
}

#drawer_menu a:hover {
    color:#004968
}

#mobile_menu a {
    color: #fff;
    border-color:#006f9b
}

#mobile_menu li li a {
    background:#00466d
}

#mobile_menu a:hover, #drawer_menu .close_button:hover, #mobile_menu .child_menu_button:hover {
    color: #fff;
    background:#00466d
}

#mobile_menu .child_menu_button .icon:before, #mobile_menu .child_menu_button:hover .icon:before {
    color:#fff
}

.megamenu .headline_area h3 .headline {
    font-size:24px
}

.megamenu_b .service_item_list .item a:after {
    background:rgba(0, 73, 104, .7)
}

#footer_banner a {
    color:#fff !important
}

#footer_banner .title {
    font-size:24px
}

#footer_banner .sub_title {
    font-size:14px
}

@media screen and (max-width: 750px) {
    #footer_banner .title {
        font-size:18px
    }

    #footer_banner .sub_title {
        font-size:12px
    }
}

.author_profile .avatar_area img, .animate_image img, .animate_background .image {
    width: 100%;
    height: auto;
    -webkit-transition: transform .5s ease;
    transition: transform .5s ease;
    -webkit-transform: scale(1.1);
    transform:scale(1.1)
}

.author_profile a.avatar:hover img, .animate_image:hover img, .animate_background:hover .image {
    -webkit-transform: scale(1);
    transform:scale(1)
}

a {
    color:#000
}

#footer_menu .footer_menu li:first-of-type a, #return_top2 a:hover:before, #bread_crumb, #bread_crumb li.last, .tcd_banner_widget .headline, .post_slider_widget .slick-arrow:hover:before, #post_title2 .title, #service_banner .main_title, .megamenu .headline_area h3 .headline, .news_category_list li.active a, .news_category_sort_button li.active a, .sns_button_list.color_type2 li.contact a:before, .tab_content_top .tab .item.active, .cb_tab_content .tab_content_bottom .title, .cb_headline .headline, .faq_list .question.active, .faq_list .question:hover, .author_profile .author_link li.contact a:before, .author_profile .author_link li.user_url a:before {
    color:#00729f
}

.square_headline, .page_navi span.current, #post_pagination p, #comment_tab li.active a, .news_category_list li.active a:before, .news_category_sort_button li.active a:before, .tab_content_bottom .slick-dots button:hover:before, .tab_content_bottom .slick-dots .slick-active button:before, .faq_list .question.active:before, .faq_list .question:hover:before, .faq_list .question:hover:after, #return_top a {
    background:#0092cc
}

.page_navi span.current, #post_pagination p, .design_headline2 span, #post_title2 .title, .project_list .category, #project_title_area .category {
    border-color:#00729f
}

.category_list_widget li.current-menu-item a, .category_list_widget li.current-menu-parent a {
    background: rgba(0, 114, 159, .5);
    border-color: #fff;
    color:#fff
}

a:hover, #footer_top a:hover, #footer_social_link li a:hover:before, #footer_menu .footer_menu li:first-of-type a:hover, #next_prev_post a:hover, #bread_crumb li a:hover, #bread_crumb li.home a:hover:before, .single_copy_title_url_btn:hover, .tcdw_search_box_widget .search_area .search_button:hover:before, .widget_tab_post_list_button div:hover, #single_author_title_area .author_link li a:hover:before, .author_profile a:hover, #post_meta_bottom a:hover, .cardlink_title a:hover, .comment a:hover, .comment_form_wrapper a:hover, #searchform .submit_button:hover:before, .p-dropdown__title:hover:after {
    color:#004968
}

.page_navi a:hover, #post_pagination a:hover, #p_readmore .button:hover, .c-pw__btn:hover, #comment_tab li a:hover, #submit_comment:hover, #cancel_comment_reply a:hover, #wp-calendar #prev a:hover, #wp-calendar #next a:hover, #wp-calendar td a:hover, #comment_tab li a:hover, #return_top a:hover {
    background-color:#004968
}

.page_navi a:hover, #post_pagination a:hover, #comment_textarea textarea:focus, .c-pw__box-input:focus {
    border-color:#004968
}

.post_content a, .custom-html-widget a {
    color:#1e84bf
}

.post_content a:hover, .custom-html-widget a:hover {
    color:#004968
}

.design_button.type1 a {
    color: #fff !important;
    background:#00729f
}

.design_button.type1 a:hover {
    color: #fff !important;
    background:#004968
}

.cat_id406 {
    background-color:#00729f
}

.cat_id406:hover {
    background-color:#004968
}

.cat_id407 {
    background-color:#00729f
}

.cat_id407:hover {
    background-color:#004968
}

.cat_id408 {
    background-color:#00729f
}

.cat_id408:hover {
    background-color:#004968
}

.cat_id409 {
    background-color:#00729f
}

.cat_id409:hover {
    background-color:#004968
}

.news_cat_id352 {
    background-color:#c4c400
}

.news_cat_id352:hover {
    background-color:#929200
}

.news_cat_id353 {
    background-color:#55a109
}

.news_cat_id353:hover {
    background-color:#356803
}

.news_cat_id354 {
    background-color:#007272
}

.news_cat_id354:hover {
    background-color:#004749
}

.tab_content_top .catch {
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif !important
}

@media screen and (min-width: 769px) {
    .cb_free_space .index_free_design_content img {
        margin:90px auto 0
    }
}

@media screen and (max-width: 750px) {
    .cb_free_space .index_free_design_content .catch {
        margin:5px 0 7px
    }
}

@media screen and (min-width: 769px) {
    .widget_search {
        border-bottom: 0 solid #ddd;
        padding-top:0
    }

    .tcdw_archive_list_widget {
        border-bottom:0 solid #ddd
    }
}

@media screen and (max-width: 750px) {
    .category_list_widget {
        border-top: 0 solid #ddd;
        padding:0 20px 0
    }

    .tab_post_list_widget {
        border-top: 0 solid #ddd;
        padding:0 20px 0
    }

    .widget_search {
        border-top:0 solid #ddd
    }

    .tcdw_archive_list_widget {
        margin-bottom:0 !important
    }
}

@media screen and (max-width: 550px) {
    .widget_tab_post_list {
        top:50px
    }
}

.styled_h2 {
    font-size: 26px !important;
    text-align: left;
    color: #fff;
    background: #000;
    border-top: 0 solid #ddd;
    border-bottom: 0 solid #ddd;
    border-left: 0 solid #ddd;
    border-right: 0 solid #ddd;
    padding: 15px !important;
    margin:0 0 30px !important
}

.styled_h3 {
    font-size: 22px !important;
    text-align: left;
    color: #000;
    border-top: 0 solid #ddd;
    border-bottom: 0 solid #ddd;
    border-left: 2px solid #000;
    border-right: 0 solid #ddd;
    padding: 6px 0 6px 16px !important;
    margin:0 0 30px !important
}

.styled_h4 {
    font-size: 18px !important;
    text-align: left;
    color: #000;
    border-top: 0 solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 0 solid #ddd;
    border-right: 0 solid #ddd;
    padding: 3px 0 3px 20px !important;
    margin:0 0 30px !important
}

.styled_h5 {
    font-size: 14px !important;
    text-align: left;
    color: #000;
    border-top: 0 solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 0 solid #ddd;
    border-right: 0 solid #ddd;
    padding: 3px 0 3px 24px !important;
    margin:0 0 30px !important
}

.q_custom_button1 {
    color: #fff !important;
    border-color:rgba(83, 83, 83, 1)
}

.q_custom_button1.animation_type1 {
    background:#535353
}

.q_custom_button1:hover, .q_custom_button1:focus {
    color: #fff !important;
    border-color:rgba(125, 125, 125, 1)
}

.q_custom_button1.animation_type1:hover {
    background:#7d7d7d
}

.q_custom_button1:before {
    background:#7d7d7d
}

.q_custom_button2 {
    color: #fff !important;
    border-color:rgba(83, 83, 83, 1)
}

.q_custom_button2.animation_type1 {
    background:#535353
}

.q_custom_button2:hover, .q_custom_button2:focus {
    color: #fff !important;
    border-color:rgba(125, 125, 125, 1)
}

.q_custom_button2.animation_type1:hover {
    background:#7d7d7d
}

.q_custom_button2:before {
    background:#7d7d7d
}

.speech_balloon_left1 .speach_balloon_text {
    background-color: #ffdfdf;
    border-color: #ffdfdf;
    color:#000
}

.speech_balloon_left1 .speach_balloon_text:before {
    border-right-color:#ffdfdf
}

.speech_balloon_left1 .speach_balloon_text:after {
    border-right-color:#ffdfdf
}

.speech_balloon_left2 .speach_balloon_text {
    background-color: #fff;
    border-color: #ff5353;
    color:#000
}

.speech_balloon_left2 .speach_balloon_text:before {
    border-right-color:#ff5353
}

.speech_balloon_left2 .speach_balloon_text:after {
    border-right-color:#fff
}

.speech_balloon_right1 .speach_balloon_text {
    background-color: #ccf4ff;
    border-color: #ccf4ff;
    color:#000
}

.speech_balloon_right1 .speach_balloon_text:before {
    border-left-color:#ccf4ff
}

.speech_balloon_right1 .speach_balloon_text:after {
    border-left-color:#ccf4ff
}

.speech_balloon_right2 .speach_balloon_text {
    background-color: #fff;
    border-color: #0789b5;
    color:#000
}

.speech_balloon_right2 .speach_balloon_text:before {
    border-left-color:#0789b5
}

.speech_balloon_right2 .speach_balloon_text:after {
    border-left-color:#fff
}

.qt_google_map .pb_googlemap_custom-overlay-inner {
    background: #00729f;
    color:#fff
}

.qt_google_map .pb_googlemap_custom-overlay-inner:after {
    border-color:#00729f transparent transparent
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color:transparent
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding:0
}

.slick-list:focus {
    outline:none
}

.slick-list.dragging {
    cursor: pointer;
    cursor:hand
}

.slick-slider .slick-track, .slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display:block
}

.slick-track:before, .slick-track:after {
    display: table;
    content: ''
}

.slick-track:after {
    clear:both
}

.slick-loading .slick-track {
    visibility:hidden
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height:1px
}

[dir=rtl] .slick-slide {
    float:right
}

.slick-slide img {
    display:block
}

.slick-slide.slick-loading img {
    display:none
}

.slick-slide.dragging img {
    pointer-events:none
}

.slick-initialized .slick-slide {
    display:block
}

.slick-loading .slick-slide {
    visibility:hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border:1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}
/* ボタン */
.button-2 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 280px;
	height: 70px;
    margin:0 auto;
    padding: .9em 2em;
    border: none;
    border-radius: 35px;
    background-color: #2589d0;
    color: #fff;
    font-weight: 600;
    font-size: 1em;
}

.button-2::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.button-2:hover {
    background-color: #1579c0;
}
.button-056-1 {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 300px;
	min-height: 60px;
    margin: 0 auto;
    padding: .9em 2em;
    border: none;
    border-radius: 25px;
    background-color: #2589d0;
    color: #fff;
    font-weight: 600;
    font-size: 1.5em;
}

.button-056-1:hover {
    background-color: #1579c0;
}

.button-056-2 {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 300px;
	min-height: 60px;
    margin: 0 auto;
    padding: .9em 2em;
    border: none;
    border-radius: 25px;
    background-color: #2589d0;
    color: #fff;
    font-weight: 600;
    font-size: 1.5em;
}

.button-056-2:hover {
    background-color: #1579c0;
}

.button-056-2::before {
    width: 1em;
    height: 1em;
    margin-right: 10px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M23.5%208.9c.2-.1.5%200%20.5.2v9.6c0%201.2-1%202.2-2.2%202.2H2.2C1%2021%200%2020%200%2018.8V9.2c0-.2.3-.4.5-.2%201%20.8%202.4%201.9%207.2%205.3%201%20.7%202.7%202.2%204.3%202.2%201.7%200%203.4-1.5%204.3-2.2%204.8-3.5%206.2-4.5%207.2-5.4zM12%2015c1.1%200%202.7-1.4%203.4-1.9%206.2-4.5%206.7-4.9%208.1-6%20.3-.3.5-.6.5-1v-.8C24%204%2023%203%2021.8%203H2.2C1%203%200%204%200%205.3v.9c0%20.3.2.6.4.8%201.4%201.1%201.9%201.5%208.1%206%20.8.6%202.4%202%203.5%202z%22%2F%3E%3C%2Fsvg%3E') no-repeat center;
    content: '';
}

.button-001 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    margin:0 auto;
    padding: .9em 2em;
    border: 1px solid #ffffff;
    border-radius: 25px;
    background-color:#fff ;
    color: #252B33;
    font-size: 1em;
}
.button-54 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 260px;
    margin: 0 auto;
    padding: .9em 3.5em .9em 1em;
	margin: 5px 2px 5px 0;
    border: 1px solid #002e7a;
    border-radius: 5px;
    background-color: #fff;
    color: #002e7a;
    font-size: 1em;
}

.button-54::after {
    position: absolute;
    right: 2em;
    transform: translateY(-50%);
    transform-origin: left;
    width: 2em;
    height: .5em;
    background-color: #002e7a;
    clip-path: polygon(0 100%, 100% 100%, 70% 40%, 70% 90%, 0% 90%);
    content: '';
    transition: transform .3s;
}

.button-54:hover::after {
    transform: translateY(-50%) scaleX(1.4);
}
.button-22 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin:0 auto;
    padding: .9em 2em;
    border: 1px #0F4B97 solid;
    border-radius: 5px;
    background-color:#FFF;
    color:#0E0E0E;
    font-weight: 600;
    font-size: 1em;
}

.button-22::after {
    display: none;
	/*transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #0E0E0E;
    border-right: 2px solid #0E0E0E;
    content: '';*/
}

.button-22:hover {
    background-color: #b0b0b0;
	color: #fff;
}

@media screen and (max-width: 640px) {
	.button-22 {
		font-size: 0.7em;
	}
	.button-22::after {
		display: none;
}

.button-22:hover {
    background-color: #b0b0b0;
	color: #fff;
}
	}
.button-1 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    margin:0 auto;
    padding: .9em 2em;
    border: 1px solid #0042aa;
    border-radius: 5px;
    background-color: #fff;
    color: #0042aa;
    font-size: 1em;
}

.button-1:hover {
    opacity: 0.7;
}

.button-1::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #0042aa;
    border-right: 2px solid #0042aa;
    content: '';
}
/* アコーディオン */
.accordion-001 {
   
    background-color: #f2f2f2;
}

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

.accordion-001 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em;
    border-radius: 5px;
    background-color: #1f8ede;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
}

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

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

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

.accordion-001 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 1em 2em 2em 2em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-001[open] p {
    transform: none;
    opacity: 1;
}
.accordion {
  display: flex;
  flex-direction: column;
  width: 300px; /* 調整が必要な場合は適切な幅に変更 */
}

.accordion-item {
  border: 1px solid #ccc;
  margin-bottom: 5px;
}

.accordion-header {
  background-color: #a3c0cc;
  padding: 15px 10px 2px 10px;
  cursor: pointer;
	position: relative;
	height: 30px; /* 高さを50pxに指定 */
}
.icon {
    position: absolute;
    right: 12px; /* 調整が必要な場合は適切な位置に変更 */
}
.accordion-content {
  display: none;
  padding: 20px 10px 2px 10px;
	  border-top: 1px solid #ccc; /* 上部に線を追加 */
  border-bottom: 1px solid #ccc; /* 下部に線を追加 */
	height: 38px; /* 高さを50pxに指定 */
	
}
/* タイトルの右端に矢印を追加 */
   .accordion-content a::after {
	font-family: "Font Awesome 6 Free";
	content: "\f138";
  font-weight: 900;
      position: absolute; /* 絶対位置指定 */

      right: 30px; /* 右端からの距離 */
		
    }

.accordion-item.active .accordion-content {
  display: block;
}
.accordion-header.active .icon {
  right: 0; /* アクティブ時にアイコンを右端に移動 */
}

/* アコーディオン診療科 */
/* Styles for accordion items */
.accordion2-item {
  border: 1px solid #fff; /* 枠線スタイルを追加 */
}

/* Styles for accordion headers */
.accordion2-header {
  background-color: #fff;
	font-size: 19px;
	color: #991f52;
  padding: 10px;
  cursor: pointer;
  border-bottom: 1px solid #ccc; /* アコーディオンヘッダーとコンテンツの間に線を追加 */
  height: 60px; /* アコーディオンヘッダーの高さを50pxに設定 */
  box-sizing: border-box; /* パディングを含めて要素の高さを計算 */
  display: flex; /* テキストを垂直方向にセンタリング */
  align-items: center; /* テキストを垂直方向にセンタリング */
  justify-content: space-between; /* コンテンツを水平方向に均等に配置 */
}

/* Add some visual indication when accordion headers are hovered */
.accordion2-header:hover {
  background-color: #f4f4f4;
}

/* Style for accordion toggle */
.accordion2-toggle {
  float: right;
  font-weight: bold;
  margin-right: 10px;
}

/* Rotate the accordion toggle when the accordion item is active */
.accordion2-item.active .accordion2-toggle {
  transform: rotate(45deg);
}

/* Styles for accordion content */
.accordion2-content {
  border: 1px solid #ccc; /* コンテンツの上に線を追加 */
  padding: 10px;
	height: 0; /* コンテンツの高さを自動調整 */
  overflow: hidden; /* コンテンツを隠す */
	visibility: hidden; /* コンテンツが見えないようにする */
  transition: max-height 0.3s ease; /* アニメーションを追加 */
}

/* アクティブなアコーディオンのコンテンツを表示 */
.accordion2-item.active .accordion2-content {
  height: auto; /* アクティブなアコーディオンのコンテンツの高さを自動調整 */
  visibility: visible; /* コンテンツを表示 */
  transition: height 0.3s ease; /* アニメーションを追加 */
}

/* Styles to hide title when accordion is closed */
.accordion2-item:not(.active) .accordion2-content h4 {
  visibility: hidden; /* アコーディオンが閉じられているときはタイトルを非表示にする */
}
/* アコーディオンが展開されたときに自動スクロールを無効化
.accordion-item.active {
  scroll-margin-top: 0;
} */
.accordion2-content h3{
	color: #4779EB;
}

/* アコーディオン医師紹介 */
.acd-check{
    display: none;
}
.acd-label{
    background: #1f8ede;
    color: #fff;
    display: block;
    margin-bottom: 5px;
    padding: 10px;
    height: 60px;
    line-height: 1.4;
	position: relative;
	
}
.acd-label::after {
	background-color: #fff;
  content: "";
  display:  inline-block;
  height: 6px;
  position: absolute;
  right: 25px;
  top: 45%;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: 12px;
}
.acd-label.open::after {
	top: 45%;
  transform: rotate(-45deg);
}
.acd-content{
    border: 1px solid #1B73BA;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}

.acd-check:checked + .acd-label + .acd-content{
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
	
}

@media screen and (max-width: 640px) {
  .acd-label{
    background: #1f8ede;
    font-size: 85%;
    color: #fff;
    display: block;
    margin-bottom: 5px;
    padding: 6px;
    height: auto;
    line-height: 1.2;
}  
}
/* アコーディオン 2 */
.acd-check2{
    display: none;
}
.acd-label2{
    background: #144166;
    color: #fff;
    display: block;
    margin-bottom: 5px;
    padding: 10px;
    height: 60px;
    line-height: 1.4;
}
.acd-content2{
    border: 1px solid #1B73BA;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check2:checked + .acd-label2 + .acd-content2{
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
	
}
@media screen and (max-width: 640px) {
  .acd-label2{
    background: #1B73BA;
    font-size: 85%;
    color: #fff;
    display: block;
    margin-bottom: 5px;
    padding: 6px;
    height: auto;
    line-height: 1.2;
}  
}

.heading-26 {
    color: #333333;
	font-family: "m-plus-1p", sans-serif;
font-weight: 400;
font-style: normal;
}

.heading-26:first-letter {
    color: #2589d0;
    font-size: 2em;
}
.heading-27 {
    display: flex;
    align-items: center;
    column-gap: 8px;
    color: #333333;
}

.heading-27::before {
    width: 0.8em;
    height: 0.4em;
    border-bottom: 4px solid #cccccc;
    border-left: 4px solid #cccccc;
    transform: rotate(-45deg) translate(2px, -2px);
    content: '';
}
.box-003 {
    max-width: 400px;
    margin: 0 auto;
    padding: 1em 1.5em;
    box-shadow: 0 4px 4px rgb(0 0 0 / 5%), 0 2px 3px -2px rgb(0 0 0 / 1%);
    background-image: linear-gradient(transparent calc(100% - 1px), #e6edf3 50%, #e6edf3), linear-gradient(90deg, transparent calc(100% - 1px), #e6edf3 50%, #e6edf3);
    background-size: 15px 15px;
    background-repeat: repeat;
    background-color: #ffffff;
    color: #333333;
}

/* ヘッダー固定リンク調整 */
.contents {
	padding-top: 10px;
}

.contents_innner {
    padding-top: 110px;
    margin-top:-110px;
}

/* テーブルスクロール横 */
@media screen and (max-width: 740px) {
  .scroll {
    overflow-x: auto;
  }
  .tbl-r07 {
    min-width: 740px;
    margin: 0 10px 50px;
	  font-size: 85%;
  }
  .tbl-r07 td {
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
  }
}
/* 矢印-2---------------------------------------------- */
.arrowbtn-2 a {
	--arrow-color: #333; /* 矢印の色を設定 */
	display: inline-flex; /* 横並びに配置 */
	align-items: center; /* 垂直方向を中央に揃える */
	color: var(--arrow-color); /* 文字色を矢印の色と一致 */
	text-decoration: none; /* 下線を非表示 */
	position: relative; /* 疑似要素の位置基準 */
}

.arrowbtn-2 a::after {
	border-bottom: 1px solid var(--arrow-color); /* 下線のスタイルを矢印として設定 */
	border-right: 1px solid var(--arrow-color); /* 右線のスタイルを矢印として設定 */
	content: ''; /* 疑似要素のコンテンツを空に設定 */
	width: 30px; /* 矢印の幅を30pxに設定 */
	height: 10px; /* 矢印の高さを10pxに設定 */
	position: absolute; /* 親要素に対して絶対位置 */
	left: 100%; /* テキストの右端に配置 */
	transform: skewX(50deg); /* 矢印の傾きの調整 */
	transition: all .3s; /* なめらかな移動効果 */
}

/* マウスオーバー時の動き */
.arrowbtn-2 a:hover::after {
	margin-left: 10px; /* マウスオーバー時に矢印を10px右に移動 */
}

/* メイン幅拡大 */
#main_contents {
    width: 100%;
    max-width: 1520px;
    padding-inline: 40px;
    box-sizing: border-box;
}
#main_contents::after {
    left: auto;
    right: 380px;
}
#main_col {
    width: calc(100% - 380px);
}

/* サイドメニュー固定 */
.side_col_inner {
    position: sticky;
    max-height: auto;
    overflow-y: scroll;
}
.sticky_headline {
    position: sticky;
    top: 0;
    z-index: 1;
}
.square_headline {
    z-index: 1;
}
@media screen and (max-width: 1201px) {
    #side_col {
        display: block;
    }
    .side_col_inner {
        width: auto;
        max-width: 770px;
        max-height: auto;
        overflow-y: auto;
        display: block;
    }
    .widget_content.sticky_headline {
        margin-bottom: 0;
    }
}

 /* 外側のテーブルの罫線は表示しない */
    .outer-table {
      border-collapse: collapse;
    }

    /* 内側のテーブルのthとtdに罫線を表示する */
    .inner-table th,
    .inner-table td {
      border: 1px solid black;
    }
/* レスポンシブ時にテーブルを積む */
@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r02 {
    width: 80%;
  }
  .tbl-r02 th,
  .tbl-r02 td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }
}
/* レスポンシブ時に2列へ */
.container2 { 
	margin: 0 auto ; 
	width :96%; 
	display: flex; 
	flex-wrap: wrap; 
	justify-content: space-between; 
	 }  
.box { 
	width: 280px; 
	 border-radius: 0px;
	border: solid 1px #c2d3f3;
background-color: #fff;
	margin: 5px 0;
}  

.box h2 { 
	padding: 15px 0 2px 0; 
	font-size: 0.8em;
	color: #0A0A0A; 
	text-align: center;}  

.box:hover {
	background-color: #CEE4FF;
}
.box h2:hover { 
	color: #0A0A0A;
}

/*画面幅670px以上の設定 ------------------------------------*/ 
@media screen and (min-width:670px){ 
	.container2 { 
		width :98%; 
	} 
	.box { 
		width: calc(25% - 2px); 

	}
	.box h2 { 
	font-size: 80%;
	padding:18px 0 5px 0;
	}
}

/*タブ ----*/ 
.tab-2 {
    display: flex;
    flex-wrap: wrap;
    gap: 0 10px;
    width: 100%;
}

.tab-2 > label {
    flex: 1 1;
    order: -1;
    opacity: .5;
    min-width: 70px;
    padding: .6em 1em;
    border-radius: 5px 5px 0 0;
    background-color: #299ecc;
    color: #fff;
    font-size: 1.2em;
    text-align: center;
    cursor: pointer;
}

.tab-2 > label:hover {
    opacity: .8;
}

.tab-2 input {
    display: none;
}

.tab-2 > div {
    display: none;
    width: 100%;
    padding: 1.5em 1em;
    background-color: #fff;
}

.tab-2 label:has(:checked) {
    opacity: 1;
}

.tab-2 label:has(:checked) + div {
    display: block;
}


.selectbox-3 {
    display: inline-flex;
    align-items: center;
    position: relative;
	width: 100%;
}

.selectbox-3::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: #535353;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}

.selectbox-3 select {
    appearance: none;
	width: 100%;
    min-width: 230px;
    height: 2.8em;
    padding: .4em calc(.8em + 30px) .4em 3.5em;
    border: 1px solid #d0d0d0;
    border-radius: 3px;
    background-color: #fff;
    color: #333333;
    font-size: 1em;
    cursor: pointer;
}

@media screen and (max-width: 640px) {
	.selectbox-3{
	font-size: 85%;
}
	
	.accordion-0088 {
    max-width: 100%;
		margin-left: 35px;
    margin-bottom: 10px;
    border-radius: 5px;
    box-shadow: 0 7px 15px -5px rgb(0 0 0 / 5%);
    background-color: #fff;
}

.accordion-0088 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
}

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

.accordion-0088 summary::before,
.accordion-0088 summary::after {
    width: 3px;
    height: .9em;
    border-radius: 5px;
    background-color: #333333b3;
    content: '';
}

.accordion-0088 summary::before {
    position: absolute;
    right: 2em;
    rotate: 90deg;
}

.accordion-0088 summary::after {
    transition: rotate .3s;
}

.accordion-0088[open] summary::after {
    rotate: 90deg;
}

.accordion-0088 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 2em 1.5em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-0088[open] p {
    transform: none;
    opacity: 1;
}

/*括弧ol,li*/
ol.hoge li {
  position: relative;
  list-style-type: none;
}

ol.hoge li:before {
  position: absolute;
  right: calc(100% + 0.5rem);  /* 0.5remは連番とテキストとの余白 */
  content: "(" counter(list-item) ")";
}
	
	.kakusu{
		display: none;
	}
/* 各部門／診療科トップ画スマホ対応 */
.u-sp-show{
  @media screen and (min-width: 769px) {
    display: none; //pc時に非表示
  }
}

.u-pc-show{
  display: none; //sp時は非表示
  @media screen and (min-width: 769px) {
    display: block; //pc時に表示
  }
}