/*--cssとローディングKeyflame-*/
/*スライド画像暗めに*/
#header_slider .item1 .overlay {
    background-color: rgba(0,0,0,.4)
}

#header_slider .item2 .overlay {
    background-color: rgba(0,0,0,.4)
}

#header_slider .item3 .overlay {
    background-color: rgba(0,0,0,.4)
}

/*ロード画面　場所指定*/
#site_loader_overlay {
    opacity: 0.5;
    position: relative;
    overflow: hidden
}

/*ロード画面　上に引き上げる動作*/
body.end_loading #site_loader_overlay {
    -webkit-transform: translate3d(0,-100%,0);
    transform: translate3d(0,-100%,0);
    transition: transform 1s cubic-bezier(.22,1,.36,1) 1s
}

/*ロード画面中　背景は映さない*/
body.no_loading_animation.end_loading #site_loader_overlay,body.show_non_bg_image_loading_screen.end_loading #site_loader_overlay {
    opacity: 0;
    pointer-events: none;
    -webkit-transform: translate3d(0,0%,0);
    transform: translate3d(0,0%,0);
    -webkit-transition: opacity .9s ease 0s;
    transition: opacity .9s ease 0s
}

/*ロード画面　入りの白い背景下に動く*/
#site_loader_overlay:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 9999;
    width: 100%;
    height: 100%;
    -webkit-transform: translate3d(0,0%,0);
    transform: translate3d(0,0%,0);
    transition: transform 1s cubic-bezier(.22,1,.36,1) .7s
}

/*ロード画面　役割不明*/
#site_loader_overlay.animate:before {
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0)
}

/*ロード画面　役割不明 javacss*/
body.end_loading #site_loader_overlay.animate:before {
    display: none
}

/*ロード画面　役割不明 javacss*/
body.no_loading_animation #site_loader_overlay:before,body.show_non_bg_image_loading_screen #site_loader_overlay:before {
    display: none
}

/*ロード画面　オーバーレイ*/
#site_loader_overlay .overlay {
    width: 100%;
    height: 100%;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(255, 255, 255, 0.4)
}

/*ロード画面　画像*/
#site_loader_overlay .bg_image {
    width: 100%;
    height: 100%;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate3d(0,0%,0);
    transform: translate3d(0,0%,0)
}

/*ロード画面　PCで表示時　　モバイルの背景を消す*/
#site_loader_overlay .bg_image.mobile {
    display: none
}

/*ロード画面　PCで表示時　　モバイルの背景を消す*/
body.end_loading #site_loader_overlay .bg_image {
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
    transition: transform 1s cubic-bezier(.22,1,.36,1) 1s
}

@media screen and (max-width: 810px) {
    #site_loader_overlay .bg_image.pc {
        display:none
    }

    #site_loader_overlay .bg_image.mobile {
        display: block
    }
}

#site_wrap {
    display: none
}

/*ロード画面　背景画像＋さらに奥の白背景*/
#site_loader_overlay {
    background: #fff;
    opacity: 1;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    width: 100%;
    height: 100vh;
    z-index: 99999
}

#site_loader_logo {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 3;
}

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

#site_loader_logo img.mobile {
    display: none
}

#site_loader_logo .catch {
    line-height: 1.6;
    padding: 0 50px;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#site_loader_logo_inner .message {
    text-align: left;
    margin: 30px auto 0;
    display: table
}

#site_loader_logo.no_logo .message {
    margin-top: 0 !important
}

#site_loader_logo_inner .message.type2 {
    text-align: center
}

#site_loader_logo_inner .message.type3 {
    text-align: right
}

#site_loader_logo_inner .message_inner {
    display: inline;
    line-height: 1.5;
    margin: 0
}

@media screen and (max-width: 810px) {
    #site_loader_logo.has_mobile_logo img.pc {
        display:none
    }

    #site_loader_logo.has_mobile_logo img.mobile {
        display: inline
    }

    #site_loader_logo .message {
        margin: 23px auto 0
    }

    #site_loader_logo .catch {
        padding: 0 20px
    }
}

#site_loader_logo .logo_image {
    opacity: 0;
    transition: opacity 1.4s ease 1.1s
}

body.no_loading_animation #site_loader_logo .logo_image,body.show_non_bg_image_loading_screen #site_loader_logo .logo_image {
    transition: opacity 1.4s ease .5s
}

#site_loader_logo.active .logo_image {
    opacity: 1
}
#site_loader_logo .logo_image img {
    margin: 0 auto
}

body.end_loading #site_loader_logo .logo_image {
    opacity: 0;
    transition: opacity 1s ease 0s !important
}

#site_loader_logo .message_inner {
    opacity: 0;
    transition: opacity 1.4s ease 1.6s
}

body.no_loading_animation #site_loader_logo .message_inner,body.show_non_bg_image_loading_screen #site_loader_logo .message_inner {
    transition: opacity 1.4s ease 1s
}

#site_loader_logo.active .message_inner {
    opacity: 1
}

body.end_loading #site_loader_logo .message_inner {
    opacity: 0;
    transition: opacity 1s ease 0s !important
}

#site_loader_logo .catch {
    opacity: 0;
    transition: opacity 1.4s ease 1.1s
}

body.no_loading_animation #site_loader_logo .catch,body.show_non_bg_image_loading_screen #site_loader_logo .catch {
    transition: opacity 1.4s ease .5s
}

#site_loader_logo.active .catch {
    opacity: 1
}

body.end_loading #site_loader_logo .catch {
    opacity: 0;
    transition: opacity 1s ease 0s !important
}

#site_loader_logo img.use_logo_animation {
    position: relative;
    -webkit-animation: slideUpDown 1.5s ease-in-out infinite 0s;
    animation: slideUpDown 1.5s ease-in-out infinite 0s
}

#site_loader_logo_inner .text {
    display: inline
}

#site_loader_logo_inner .dot_animation_wrap {
    display: inline;
    margin: 0 0 0 4px;
    position: absolute
}

#site_loader_logo_inner .dot_animation {
    display: inline
}

#site_loader_logo_inner i {
    width: 2px;
    height: 2px;
    margin: 0 4px 0 0;
    border-radius: 100%;
    display: inline-block;
    background: #000;
    -webkit-animation: loading-dots-middle-dots .5s linear infinite;
    -ms-animation: loading-dots-middle-dots .5s linear infinite;
    animation: loading-dots-middle-dots .5s linear infinite
}

#site_loader_logo_inner i:first-child {
    opacity: 0;
    -webkit-animation: loading-dots-first-dot .5s infinite;
    -ms-animation: loading-dots-first-dot .5s linear infinite;
    animation: loading-dots-first-dot .5s linear infinite;
    -webkit-transform: translate(-4px);
    -ms-transform: translate(-4px);
    transform: translate(-4px)
}

#site_loader_logo_inner i:last-child {
    -webkit-animation: loading-dots-last-dot .5s linear infinite;
    -ms-animation: loading-dots-last-dot .5s linear infinite;
    animation: loading-dots-last-dot .5s linear infinite
}

@-webkit-keyframes loading-dots-fadein {
    100% {
        opacity: 1
    }
}

@keyframes loading-dots-fadein {
    100% {
        opacity: 1
    }
}

@-webkit-keyframes loading-dots-first-dot {
    100% {
        -webkit-transform: translate(6px);
        -ms-transform: translate(6px);
        transform: translate(6px);
        opacity: 1
    }
}

@keyframes loading-dots-first-dot {
    100% {
        -webkit-transform: translate(6px);
        -ms-transform: translate(6px);
        transform: translate(6px);
        opacity: 1
    }
}

@-webkit-keyframes loading-dots-middle-dots {
    100% {
        -webkit-transform: translate(6px);
        -ms-transform: translate(6px);
        transform: translate(6px)
    }
}

@keyframes loading-dots-middle-dots {
    100% {
        -webkit-transform: translate(6px);
        -ms-transform: translate(6px);
        transform: translate(6px)
    }
}

@-webkit-keyframes loading-dots-last-dot {
    100% {
        -webkit-transform: translate(6px);
        -ms-transform: translate(6px);
        transform: translate(6px);
        opacity: 0
    }
}

@keyframes loading-dots-last-dot {
    100% {
        -webkit-transform: translate(6px);
        -ms-transform: translate(6px);
        transform: translate(6px);
        opacity: 0
    }
}

#site_loader_logo_inner .message {
    font-size: 18px;
    color: #000
}

#site_loader_logo_inner i {
    background: #000
}

@media screen and (max-width: 810px) {
    #site_loader_logo_inner .message {
        font-size:16px
    }
}

#index_fixed_content02 .mobile{
    display: none;
}

.caption02 .catchcopy01{ 
    animation: flowing-anim1 9s;
}
@keyframes flowing-anim1 {
    60%{width: 0%;}
    75%{width: 100%;}
}
.caption02 .catchcopy02{ 
    animation: flowing-anim2 9s;
}
@keyframes flowing-anim2 {
    70%{width: 0%;}
    85%{width: 100%;}
}
.caption02 p:nth-child(1){ 
    margin-bottom: 20px;
}
.caption02 p{ 

    letter-spacing: 20px;
    font-size: 30pt;
    font-family: 'Sawarabi Mincho', serif;
    font-weight: 100;
    color: #fff;
    white-space: nowrap;
    overflow: hidden;
    margin: 0;
}
.caption02 p:nth-child(2n){
    padding-left: 40px;
}
#index_fixed_content02 {
    z-index: 100;
    position: absolute;
    top: 45%;
    left: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

@media screen and (max-width: 810px) {
    .caption02 p{
        font-size: 20pt;
        letter-spacing: 8px;
    }
    #index_fixed_content02 {
        top: 40%;
    }
    #index_fixed_content02 .pc{
        display: none;
    }
    #index_fixed_content02 .mobile{
        display: block;
    }
    .caption02 p:nth-child(2n){
        padding-left: 0px;
    }
    .caption02 p:nth-child(1n){ 
        margin-bottom: 10px;
    }
    .caption02 p:nth-child(2){ 
        margin-bottom: 20px;
    }

    .caption02 .catchcopy01{ 
        animation: flowing-anim1 9s;
    }
    @keyframes flowing-anim1 {
        55%{width: 0%;}
        70%{width: 100%;}
    }

    .caption02 .catchcopy01-2{ 
        animation: flowing-anim1-2 9s;
    }
    @keyframes flowing-anim1-2 {
        63%{width: 0%;}
        71%{width: 100%;}
    }

    .caption02 .catchcopy02{ 
        animation: flowing-anim2 9s;
    }
    @keyframes flowing-anim2 {
        72%{width: 0%;}
        80%{width: 100%;}
    }
    
    .caption02 .catchcopy02-2{ 
        animation: flowing-anim2-2 9s;
    }
    @keyframes flowing-anim2-2 {
        80%{width: 0%;}
        94%{width: 100%;}
    }

}
@font-face {
    font-family: 'design_plus';
    src: url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/design_plus.eot?v=1.2);
    src: url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/design_plus.eot?v=1.2#iefix) format('embedded-opentype'),url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/design_plus.woff?v=1.2) format('woff'),url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/design_plus.ttf?v=1.2) format('truetype'),url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/design_plus.svg?v=1.2#design_plus) format('svg');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'footer_bar';
    src: url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/footer_bar.eot?v=1.0);
    src: url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/footer_bar.eot?v=1.0#iefix) format('embedded-opentype'),url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/footer_bar.woff?v=1.0) format('woff'),url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/footer_bar.ttf?v=1.0) format('truetype'),url(https://demo.tcd-theme.com/tcd091/wp-content/themes/tenjiku_tcd091/fonts/footer_bar.svg?v=1.0#footer_bar) format('svg');
    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,caption01,caption02,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%
}

body {
    font-family: Arial,sans-serif;
    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
}

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

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

#header_slider .item {
    overflow: hidden;
    position: relative;
    width: 100%
}

#header_slider .item.slick-last-active {
    z-index: 999 !important
}

#header_slider .item.first_item {
    z-index: 999
}

#header_slider .item.image_item {
    opacity: 1 !important;
    transition: none !important
}

#header_slider .bg_image {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    transform: scale(1.2);
    filter: blur(25px)
}

#header_slider .item.first_item .bg_image {
    transform: scale(1.2);
    filter: blur(0)
}

#header_slider .item.animate .bg_image {
    transition: transform 2.4s cubic-bezier(.16,1,.3,1) 0s,filter 2.4s cubic-bezier(.16,1,.3,1) 0s;
    transform: scale(1);
    filter: blur(0)
}

#header_slider .bg_image.mobile {
    display: none
}

#header_slider .overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2
}

#header_slider .item.video,#header_slider .item.youtube {
    transition: opacity 1.5s ease 0s !important
}

#header_slider .item.video.first_item,#header_slider .item.youtube.first_item {
    opacity: 1 !important
}

#header_slider .item.video.animate,#header_slider .item.youtube.animate {
    opacity: 1 !important
}

#header_slider .video_wrap {
    position: relative
}

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

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

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

#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 .caption01 {
    z-index: 100;
    text-align: center;
    position: absolute;
    bottom: 0;
    right: 0;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}


#header_slider .center_logo img {
    display: block;
    margin: auto;
    max-width: calc(100% - 120px)
}

#header_slider .center_logo img.mobile {
    display: none
}

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

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

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

#header_slider .desc p {
    font-size: 16px;
    line-height: 2.0
}

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

#header_slider .button {
    border: 1px solid #fff;
    font-size: 16px;
    min-width: 270px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    position: relative;
    padding: 0 60px;
    margin-top: 30px;
    display: inline-block;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .2s ease;
    transition: all .2s ease
}

#header_slider .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
}

#header_slider .button.animation_type3:before {
    transform: skewX(45deg);
    width: calc(100% + 60px);
    left: calc(-100% - 100px)
}

#header_slider .button.animation_type2:hover:before {
    left: 0
}

#header_slider .button.animation_type3:hover:before {
    left: -30px
}

#header_slider .button.shape_type2 {
    border-radius: 10px
}

#header_slider .button.shape_type3 {
    border-radius: 60px
}

#header_slider .caption01 .animate_item ,.caption02 .animate_item{
    opacity: 0;
    position: relative
}

#header_slider .center_logo.animate,#header_slider .catch.animate,#header_slider .desc.animate,#header_slider .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
}

@media screen and (max-width:1000px) {
    #header_slider .center_logo.animate,#header_slider .catch.animate,#header_slider .desc.animate,#header_slider .button.animate {
        -webkit-animation: slideUp 1.7s cubic-bezier(.165,.84,.44,1) forwards 0s;
        animation: slideUp 1.7s cubic-bezier(.165,.84,.44,1) forwards 0s
    }
}
body.home #header_logo,body.home #drawer_menu_button {
    opacity: 0
}

body.home #header_logo.animate,body.home #drawer_menu_button.animate,#index_news_ticker.animate {
    -webkit-animation: opacityAnimation 2s ease forwards 0s;
    animation: opacityAnimation 2s ease forwards 0s
}

body.stop_index_slider_animation #header_logo {
    opacity: 1
}

body.full_height_header.home #header_logo,body.full_height_header.home #drawer_menu_button {
    opacity: 1 !important
}

body.error404.home #header_logo,body.error404.home #drawer_menu_button {
    opacity: 1 !important
}


body.no_index_header_content #index_content_builder {
    margin-top: 80px
}

.cb_header {
    width: 1130px;
    margin: 0 auto;
    text-align: center
}

.cb_header .catch_icon {
    margin: 0 auto 35px;
    display: block
}

.cb_header .catch {
    line-height: 1.5;
    margin: -5px 0 28px
}

.cb_header .desc {
    margin: -10px 0 50px
}

.cb_header p {
    line-height: 2.4
}

.cb_gallery .cb_header {
    padding-bottom: 90px
}

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

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

#page_header.small {
    height: 180px
}

#header_logo {
    opacity: 0;
    -webkit-transition: opacity 1s ease-in-out .2s;
    transition: opacity 1s ease .2s
}

#header_logo.animate {
    opacity: 1
}

#page_header.full_height:before {
    display: none
}

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

#page_header .catch .mobile {
    display: none
}

#page_header .headline_area {
    color: #fff;
    line-height: 80px;
    line-height: 80px;
    text-align: center;
    z-index: 3;
    width: 100%;
    border-top: 1px solid rgba(255,255,255,.3);
    position: absolute;
    bottom: 0
}

#page_header .desc_area {
    z-index: 3;
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%)
}

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

#page_header .desc .mobile {
    display: none
}

#page_header_inner .desc {
    margin: 13px 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;
    transform: scale(1.1);
    -webkit-transition: transform 1.7s cubic-bezier(.075,.82,.165,1);
    transition: transform 1.7s cubic-bezier(.075,.82,.165,1)
}

#page_header .bg_image.mobile {
    display: none
}

#page_header .headline_area.animate_item .headline,#page_header .desc_area.animate_item .desc {
    opacity: 0;
    position: relative
}

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

#page_header .headline_area.animate .headline {
    -webkit-animation: opacityAnimation 1.3s cubic-bezier(.165,.84,.44,1) forwards .7s;
    animation: opacityAnimation 1.3s cubic-bezier(.165,.84,.44,1) forwards .7s
}

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

#page_header_inner .animate {
    -webkit-animation: slideUp 1.3s cubic-bezier(.165,.84,.44,1) forwards .7s;
    animation: slideUp 1.3s cubic-bezier(.165,.84,.44,1) forwards .7s
}

#page_header .bg_image.animate {
    transform: scale(1)
}


.lp_content_header {
    text-align: center;
    margin-bottom: 90px
}

.lp_content_header img {
    display: block;
    margin: 0 auto 40px
}

.lp_content_header .catch {
    line-height: 1.5;
    margin-top: -5px
}

.lp_content_header .desc {
    margin: 20px 0 0
}

.lp_content_header p {
    line-height: 2.4
}


.lp_design_content2 .header_image {
    position: relative;
    width: 100%;
    height: 600px
}


.menu_cb_header {
    text-align: center;
    margin-bottom: 90px;
    padding: 0 50px
}

.menu_cb_header img {
    display: block;
    margin: 0 auto 40px
}

.menu_cb_header .catch {
    line-height: 1.5;
    margin-top: -5px
}

.menu_cb_header .desc {
    margin: 20px 0 0
}

.menu_cb_header p {
    line-height: 2.4
}

#gallery_archive_header {
    text-align: center;
    margin-bottom: 90px
}

#gallery_archive_header img {
    display: block;
    margin: 0 auto 40px
}

#gallery_archive_header .catch {
    line-height: 1.5;
    margin-top: -5px
}

#gallery_archive_header .desc {
    margin: 20px 0 0
}

#gallery_archive_header p {
    line-height: 2.4
}

/* #header {
    z-index: 1100;
    position: relative;
    width: 100%;
    height: 80px;
    background: #fff;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease
} */

body.home #header {
    position: fixed;
    background: 0 0
}

body.home.header_fix #header {
    background: #fff
}

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

body.header_fix {
    padding-top: 80px
}

body.home.header_fix {
    padding-top: 0
}

body.hide_page_header_bar {
    padding-top: 0 !important
}

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

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


#header_circle {
    display: block;
    background: #fff;
    width: 380px;
    height: 380px;
    border-radius: 100%;
    position: absolute;
    bottom: -50px;
    z-index: 1;
    margin: auto;
    left: 0;
    right: 0;
    -webkit-transform: translate3d(0,-50px,0);
    transform: translate3d(0,-50px,0)
}

#header_circle.animate {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
    transition: transform .7s cubic-bezier(.165,.84,.44,1) 0s
}

body.header_fix #header_circle.animate {
    -webkit-transform: translate3d(0,-50px,0);
    transform: translate3d(0,-50px,0);
    transition: transform .7s cubic-bezier(.165,.84,.44,1) .1s
}

body.hide_page_header_bar #header_circle,body.hide_page_header #header_circle {
    display: none
}

body.home #header_circle {
    display: none
}

#header_logo {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    z-index: 3
}

#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.home #header_logo {
    left: 30px;
    -webkit-transform: translate(0%,-50%);
    transform: translate(0%,-50%)
}

body.home.header_fix #header_logo {
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%)
}

body.home #header_logo a .logo_text {
    color: #fff
}

body.home.header_fix #header_logo a .logo_text {
    color: #000
}

body.home #header_logo img.logo_image {
    display: none
}

body.home #header_logo img.logo_image2.mobile {
    display: none
}

body.home.header_fix #header_logo img.logo_image {
    display: block
}

body.home.header_fix #header_logo img.logo_image.mobile {
    display: none
}

body.home.header_fix #header_logo img.logo_image2 {
    display: none
}

body.home.no_index_header_content #header {
    background: #fff
}

body.home.no_index_header_content #header_logo {
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%)
}

body.home.no_index_header_content #header_logo img.logo_image {
    display: block
}

body.home.no_index_header_content #header_logo img.logo_image2 {
    display: none
}

body.home.no_index_header_content #header_logo img.logo_image.mobile {
    display: none
}


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

#header_message.type1 .post_content {
    width: 710px;
    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
}

@-webkit-keyframes slideUp {
    0% {
        bottom: -30px
    }

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

@keyframes slideUp {
    0% {
        bottom: -30px
    }

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


@-webkit-keyframes opacityAnimation {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes opacityAnimation {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}


    body.admin-bar.header_fix #header {
        margin-top: 32px
    }



    .mobile body.admin-bar.header_fix {
        padding-top: 102px
    }

    @media screen and (max-width: 781px) {

        body.admin-bar.header_fix #header {
            margin-top: 46px
        }



        .mobile body.admin-bar.header_fix {
            padding-top: 126px
        }
    }


    body.no_index_header_content #index_content_builder {
        margin-top: 60px
    }

    @media screen and (max-width: 1000px) {

        
        #header_slider .center_logo img.mobile {
            max-width: calc(100% - 100px)
        }


        #header_slider .center_logo img.pc {
            display: none
        }

        #header_slider .center_logo img.mobile {
            display: block
        }

        #header_slider .desc p {
            font-size: 14px
        }

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

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

        #header_slider .button {
            font-size: 14px;
            min-width: 240px;
            height: 50px;
            line-height: 50px;
            padding: 0 30px
        }

        #header_slider .bg_image.pc {
            display: none
        }

        #header_slider .bg_image.mobile {
            display: block
        }
    }

    .cb_header {
        width: auto;
        margin: 0 60px
    }

    @media screen and (max-width: 810px) {
        .cb_header {
            width:auto;
            margin: 0 20px
        }

        .cb_header .catch_icon {
            margin: 0 auto 30px;
            display: block
        }

        .cb_header .catch {
            margin: -5px 0 25px
        }

        .cb_header .desc {
            margin: -10px 0 33px
        }

        .cb_header p {
            line-height: 2
        }
    }

    @media screen and (max-width: 810px) {
        .cb_gallery .cb_header {
            padding-bottom: 0
        }
    }


    @media screen and (max-width: 810px) {
        .lp_content_header {
            margin-bottom:35px
        }

        .lp_content_header img {
            margin: 0 auto 30px
        }

        .lp_content_header .catch {
            line-height: 1.5;
            margin-top: -5px
        }

        .lp_content_header .desc {
            margin: 17px 0 0
        }

        .lp_content_header p {
            line-height: 2
        }
    }


    @media screen and (max-width: 810px) {

        #gallery_archive_header {
            margin-bottom: 30px;
            padding: 0 20px
        }

        #gallery_archive_header img {
            margin: 0 auto 30px
        }

        #gallery_archive_header .desc {
            margin: 17px 0 0
        }

        #gallery_archive_header p {
            line-height: 2
        }
    }

    @media screen and (max-width: 810px) {
        #single_menu_title_area {
            padding:40px 0 0
        }

        .menu_cb_header {
            margin-bottom: 32px;
            padding: 0 20px
        }

        .lp_free_space .menu_cb_header {
            margin-bottom: 25px
        }

        .menu_cb_header img {
            margin: 0 auto 25px
        }

        .menu_cb_header .catch {
            line-height: 1.5;
            margin-top: -5px
        }

        .menu_cb_header .desc {
            margin: 17px 0 0
        }

        .menu_cb_header p {
            line-height: 2
        }
    }


    #page_header {
        height: 350px
    }

    #page_header_inner {
        width: 100% !important;
        padding: 0 60px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    @media screen and (max-width: 810px) {
        #page_header {
            height:220px
        }

        #page_header.small {
            height: 130px
        }

        #page_header_inner {
            padding: 0 50px
        }

        #page_header .desc_area {
            padding: 0 50px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box
        }

        #page_header .desc {
            margin: 0;
            line-height: 2
        }

        #page_header .desc .mobile {
            display: block
        }

        #page_header .desc .pc {
            display: none
        }

        #page_header .headline_area {
            line-height: 50px;
            line-height: 50px
        }

        #page_header .bg_image.pc {
            display: none
        }

        #page_header .bg_image.mobile {
            display: block
        }

        #page_header .catch .pc {
            display: none
        }

        #page_header .catch .mobile {
            display: block
        }
    }


    @media screen and (max-width: 950px) {

        #container {
            -webkit-transition: transform .7s cubic-bezier(.22,1,.36,1) 0s !important;
            transition: transform .7s cubic-bezier(.22,1,.36,1) 0s !important;
            -webkit-transform: translate3d(0%,0,0);
            transform: translate3d(0%,0,0)
        }

        #header {
            -webkit-transition: background-color .3s ease,transform .7s cubic-bezier(.22,1,.36,1) 0s !important;
            transition: background-color .3s ease,transform .7s cubic-bezier(.22,1,.36,1) 0s !important;
            -webkit-transform: translate3d(0%,0,0);
            transform: translate3d(0%,0,0)
        }

        body.open_drawer_menu #container,body.open_drawer_menu #header {
            -webkit-transform: translate3d(-100%,0,0) !important;
            transform: translate3d(-100%,0,0) !important
        }

    /* #header {
        height: 60px
    } */

    body.header_fix {
        padding-top: 60px
    }

    #header_circle {
        width: 230px;
        height: 230px;
        bottom: -30px;
        -webkit-transform: translate3d(0,-30px,0);
        transform: translate3d(0,-30px,0)
    }

    #header_circle.animate {
        -webkit-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0)
    }

    body.header_fix #header_circle.animate {
        -webkit-transform: translate3d(0,-30px,0);
        transform: translate3d(0,-30px,0)
    }

    #header_logo .logo_image.pc {
        display: none
    }

    #header_logo .logo_image.mobile {
        display: block
    }

    body.home.header_fix #header_logo img.logo_image.pc {
        display: none
    }

    body.home.header_fix #header_logo img.logo_image.mobile {
        display: block
    }

    body.home #header_logo img.logo_image2.pc {
        display: none
    }

    body.home #header_logo img.logo_image2.mobile {
        display: block
    }

    body.home.header_fix #header_logo img.logo_image2.mobile {
        display: none
    }

    body.home.no_index_header_content #header_logo img.logo_image.pc {
        display: none
    }

    body.home.no_index_header_content #header_logo img.logo_image.mobile {
        display: block
    }

    body.home.no_index_header_content #header_logo img.logo_image2.mobile {
        display: none
    }

    @media screen and (max-width: 810px) {
        body.home #header_logo {
            left:20px
        }

        #index_header_logo .logo_image.mobile {
            display: block
        }

        #index_header_logo .logo_image.pc {
            display: none
        }
    }

    #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: 810px) {
        #header_message .post_content {
            line-height:1.8
        }

        #header_message.show_close_button .post_content {
            margin: 0 35px !important
        }
    }

}


#header_logo .logo_text {
    font-size: 32px
}

#footer_logo .logo_text {
    font-size: 32px
}

@media screen and (max-width: 1201px) {
    #header_logo .logo_text {
        font-size:24px
    }
}

.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
}
