@charset "UTF-8";
/* ka蘭（カラン） CSS Document */
/*----------------------------------------------------------
	全体共通
----------------------------------------------------------*/
body {
    font-size: 16px;
    font-style: normal;
    color: #54463B;
    line-height: 2.2;
    letter-spacing: 0.05rem;
    font-family: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    position: relative;
    counter-reset: number 0;
    overflow: hidden;
    background-color: #fff;
}
.font-type2 {
    font-family: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 400;
}
div#site-loader-overlay {
    background-color: #fff;
}
.flex_lay {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.flex_lay_box {
    width: 50%;
    height: auto;
    box-sizing: border-box;
    padding-right: 1rem;
}
.flex_lay_box:nth-child(even) {
    padding-right: 0;
    padding-left: 0rem;
}
@media screen and (max-width: 991px) {
    .inner {
        width: 90%;
    }
}
@media screen and (max-width: 768px) {
    .flex_lay_box {
        width: 100%;
        margin-bottom: 2em;
        padding-right: 0;
    }
}
/*----------------------------------------------------------
	ヘッダーナビ
----------------------------------------------------------*/
.header {
    background: none;
}
.header-bar {
    height: 100px;
    background: #fff !important;
}
.logo-image {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 180px;
    height: auto;
    margin-left: 0;
    max-height: 180px;
}
.header-bar-inner {
    width: 100%;
}
.global-nav {
    padding-right: 0px;
    font-size: 15px;
    font-weight: 500;
}
.global-nav > ul > li > a {
    font-size: 1em;
    color: #54463b;
    font-weight: 500;
    line-height: 80px;
    padding: 0px 25px;
    position: relative;
    text-align: center;
    transition: all 0.5s;
}
.global-nav a:hover, .global-nav .current-menu-item > a {
    color: #9b4995;
}
.global-nav > ul > li > a:before {
    content: '';
    height: 0px;
    left: 50%;
    width: 1px;
    bottom: -9px;
    position: absolute;
    background: #f8b3f8;
    transition: 0.5s;
}
.global-nav .current-menu-item > a::before, .global-nav > ul > li > a:hover::before {
    height: calc(100% - 77px);
}
.global-nav > ul > li > a:after {
    position: relative;
    text-align: center;
    display: block;
    bottom: 20px;
    line-height: 1;
    font-size: 11px;
    letter-spacing: 1px;
    font-weight: 400;
    color: #54463B;
}
.global-nav > ul > li.global-menu-001 > a:after {
    content: 'トップ'
}
.global-nav > ul > li.global-menu-002 > a:after {
    content: '施術メニュー・料金'
}
.global-nav > ul > li.global-menu-003 > a:after {
    content: 'ご挨拶'
}
.global-nav > ul > li.global-menu-004 > a:after {
    content: '施術例'
}
.global-nav > ul > li.global-menu-005 > a:after {
    content: '運営概要'
}
.global-nav > ul > li.global-menu-006 > a:after {
    content: 'お問い合わせ'
}
.global-nav .sub-menu {
    right: 0 !important;
    left: auto;
    top: 100px;
}
.global-nav .sub-menu a {
    font-size: 13px;
    color: #54463b;
    background: #fff !important;
}
.global-nav .sub-menu a:hover {
    color: #9a4894 !important;
    background: #FFECFF !important;
}
.global-nav .sub-menu .current-menu-item > a {
    color: #9a4894 !important;
    background: #FFECFF !important;
}
@media only screen and (max-width: 1200px) {
    .header-bar {
        height: 55px;
    }
    .logo-image {
        top: 0;
        left: 0;
        width: 75px;
    }
    .logo img {
        width: 75px;
        max-height: 75px;
    }
    .global-nav-button {
        border-left: 0;
        background: none;
    }
    .global-nav-button:before {
        color: #54463b;
    }
    .global-nav > ul > li > a {
        font-size: 12px;
        text-align: left;
        padding: 0 0 0 20px;
        line-height: 50px;
        background: #fff;
    }
    .global-nav .sub-menu a {
        font-size: 12px;
        text-align: left;
        padding: 0 0 0 40px;
        line-height: 50px;
    }
    .global-nav > ul > li > a:after {
        text-align: left;
        left: 140px;
        bottom: 30px;
        width: 150px;
        color: #9a4894;
    }
    .global-nav .menu-item-has-children > a span::before {
        color: #4E5459;
    }
    .global-nav a {
        background: #fff;
        color: #54463B !important;
    }
    .global-nav a:hover {
        color: #9a4894 !important;
        background: #fff;
    }
    .global-nav .sub-menu {
        top: 0px;
    }
    .global-nav .sub-menu a {
        color: #54463B !important;
        background: #fff8f8 !important;
    }
    .global-nav .sub-menu a:hover {
        color: #9a4894 !important;
        background: #fff;
    }
    .global-nav a:hover:before {
        content: none;
    }
}
@media only screen and (max-width: 970px) {
    .header-bar-inner {
        width: 100% !important;
    }
}
@media only screen and (max-width: 820px) {
    img.s_logo {}
}
@media only screen and (max-width: 767px) {
    .logo.logo-image {}
}
@media only screen and (max-width: 500px) {
    .logo.logo-image {}
}
/*----------------------------------------------------------
	トップページ FV
----------------------------------------------------------*/
.mb_YTPBar {
    display: none !important;
}
.header-youtube-overlay {
    background: linear-gradient(179deg, rgb(255 190 190 / 10%) 42%, rgb(255 217 217 / 37%) 100%);
}
.header-youtube:not(.bg-image) {
    height: calc(100svw* 9 / 16 - 37px) !important;
}
.top-slider-content-inner:hover {
    background: none;
}
.top-slider-content-inner {
    background: none;
}
.top-slider-nav a, .top-slider-nav li.active a {
    display: none;
}
.top-slider-content {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
}
.top-slider-content, .top-slider-content-inner {
    width: auto !important;
    height: 100% !important;
    background: none;
    padding: 0 !important;
    margin-left: auto;
    margin-right: auto;
    border-radius: 0;
    z-index: 10;
    background-position: left 15% top 75% !important;
}
img.top-slider-logo {
    width: auto !important;
    height: 50vh !important;
    max-height: 208px;
    display: block;
    margin: 0 auto;
    position: absolute;
}
.top-slider-content-inner:after {
    display: none;
}
.top-slider-content-inner {
    background: none;
    box-sizing: border-box;
    border-radius: 0;
    text-align: left;
    margin: 0 auto;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
    height: 100% !important;
}
.top-slider-wrapper {
    overflow: hidden;
    position: relative;
    margin: auto;
}
@media only screen and (max-width: 1200px) {
    .top-slider-content, .top-slider-content-inner {
        margin-left: auto;
        margin-right: auto;
        margin-top: auto;
    }
    .top-slider-wrapper::before {
        bottom: 0px;
    }
    .top-slider-wrapper {
        height: auto;
    }
}
@media only screen and (max-width: 1024px) {
    .top-slider-content, .top-slider-content-inner {
        width: 100% !important;
    }
}
@media only screen and (max-width: 980px) {
    .header-youtube::after {
        bottom: 45px;
    }
    img.top-slider-logo {
        bottom: auto;
    }
}
@media only screen and (max-width: 740px) {
    img.top-slider-logo {
/*         width: 100% !important; */
		width: 50% !important;
        height: auto !important;
        bottom: auto;
    }
}
@media only screen and (max-width: 500px) {}
/*----------------------------------------------------------
	トップページ オリジナルコンテンツ
----------------------------------------------------------*/
/*--オリジナル01--*/
#content01 {
    padding: 7% 0 6%;
    position: relative;
}
#content01::before {
    content: '';
    background: url(/wp-content/themes/story_tcd041/img/pattern-parts01.jpg);
    background-attachment: fixed;
    background-size: cover;
    width: 100%;
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.2;
}
/*#content01::after {
    height: 6em;
    position: absolute;
    width: 100%;
    content: '';
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
    left: 0;
    bottom: 0;
}*/
.original_inner {
    margin: 0 auto;
    max-width: 1250px;
    width: 86%;
}
.choucho01, .choucho02, .choucho03, .choucho04 {
    position: absolute;
}
.front_intro-outer {
    position: relative;
}
.front_intro_inner {
    position: relative;
    padding-left: calc(45% + 20px);
    padding-top: 40px;
    padding-bottom: 40px;
}
.front_intro-outer .inner {
    position: relative;
    z-index: 2;
}
.front_intro-outer::after {
/*     background: url(/wp-content/themes/story_tcd041/img/frontimg01.jpg) no-repeat center; */
	background: url(/wp-content/uploads/2025/06/line_oa_chat_250620_164453.jpg) no-repeat center;
    background-size: cover;
    top: 0;
    left: 0;
    width: 44%;
    height: 100%;
    content: '';
    position: absolute;
    z-index: 0;
    border-radius: 0 13px 13px 0;
}
.front_intro_inner h2 {
    font-size: 1.6em;
    font-weight: 500;
    letter-spacing: .1em;
    margin-bottom: 5px;
    line-height: 2;
    color: #9a4894;
}
.front_intro_inner .subttl {
    font-size: 0.8em;
    font-weight: 500;
    letter-spacing: .15em;
    margin-bottom: 30px;
    line-height: 2;
    color: #efbdac;
}
.front_intro_inner p {
    line-height: 2.2;
}
/*--オリジナル02--*/
.content02 {
    background: #fff;
    position: relative;
    padding: 6em 0;
}
/* .content02:before {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-image: url(/wp-content/themes/story_tcd041/img/bg01.jpg);
    opacity: 0.5;
}*/
.content02:after {
    content: '';
    display: block;
    position: absolute;
    background: #faf3f9;
    background-size: cover;
    background-attachment: fixed;
    width: 79%;
    height: 100%;
    top: 0;
    right: 0;
    z-index: -10;
    border-radius: 13px 0 0;
}
.content02-inner {
    width: 85%;
    padding-top: 0;
    padding-bottom: 0;
    position: relative;
    z-index: 10;
}
.content02-item:first-of-type {
    top: 0;
}
.content02-item:nth-of-type(2) {
    top: 60px;
}
.content02-item:nth-of-type(3) {
    top: 120px;
}
.content02-inner-img {
    margin: 0 auto 30px;
    display: block;
    width: 100%;
    border-radius: 10px;
}
.content02-title {
    line-height: 1.5;
    font-weight: 500 !important;
    margin: 0 0 10px;
    padding: 0;
    font-size: 20px;
    color: #9a4894;
    text-align: left;
    letter-spacing: 0.1em !important;
}
.content02-text {
    color: #54463b;
    padding: 0;
    line-height: 2.2;
}
a.content02-button {
    line-height: 48px;
    background: none;
    box-sizing: border-box;
    margin: 0 0 0 auto;
    text-align: left;
    width: 100%;
    border-bottom: 1px solid #a3a3a3;
    font-weight: 500;
    position: relative;
    margin-top: 20px;
    font-size: 15px;
    display: inline-block;
    text-decoration: none;
    color: #c736c7 !important;
}
a.content02-button::before {
    position: absolute;
    bottom: -1px;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #c736c7;
    /* transform: scale(0, 1); */
    transform-origin: right top;
    transition: transform 0.4s;
    width: 98px;
}
a.content02-button::after {
    content: 'MORE';
    position: absolute;
    right: 0px;
    letter-spacing: 2px;
    transition: 0.4s;
    font-size: 10px;
}
a.content02-button:hover {
    background: none !important;
    color: #FFCF6A;
}
a.content02-button:hover::before {
    width: 100%;
    transition: 0.6s;
}
/*--オリジナル03--*/
section.original03 {
    padding: 10em 0;
    position: relative;
    background: #faf3f9;
}
.original03-text h2 {
    font-size: 1.6em;
    letter-spacing: 0.05em;
    margin-bottom: 0.75em;
    font-weight: 500;
    line-height: 1.5;
    position: relative;
    color: #fff;
}
.original03-text h3 {
    margin-bottom: 2em;
}
.original03-text {
    position: relative;
    padding-right: 0%;
    padding-left: 50%;
    color: #fff;
}
.original03-text p {
    line-height: 2.4;
}
section.original03::before {
    content: '';
    position: absolute;
    display: block;
    background-image: url(/wp-content/themes/story_tcd041/img/top_original03.jpg);
    background-size: cover;
    background-attachment: fixed;
    left: 0;
    bottom: 0px;
    height: 100%;
    z-index: -2;
    width: calc(100% - 50px);
    border-radius: 0 10px 10px 0;
}
section.original03::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: #311d33b8;
    height: 100%;
    width: calc(100% - 50px);
    border-radius: 0 10px 10px 0;
}
/*--オリジナル04--*/
section.front-third {
    padding-top: 60px;
    padding-bottom: 60px;
    background: #fff;
    position: relative;
    z-index: 0;
}
section.front-third:after {
    content: '';
    display: block;
    position: absolute;
    background: #faf3f9;
    background-size: cover;
    background-attachment: fixed;
    width: 79%;
    height: 100%;
    top: 0;
    right: 0;
    z-index: -2;
    border-radius: 0 0 0 10px;
}
.third-box {
    margin-bottom: 50px;
}
.third-box:last-of-type {
    margin-bottom: 0;
}
.front-third-inner {
    position: relative;
    padding-right: 60%;
}
.third-box:nth-of-type(2n) .front-third-inner {
    padding-right: 0;
    padding-left: 60%;
}
.third-box .front-third-inner::after {
    content: '';
    position: absolute;
    width: 60%;
    height: 100%;
    top: 0;
    right: 0;
    background-size: cover;
    background-color: #dcdfdf;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
    border-radius: 10px 0 0 10px;
}
.third-box:nth-of-type(2n) .front-third-inner::after {
    right: auto;
    left: 0;
    border-radius: 0 10px 10px 0;
}
.third-box .front-third-inner.third01::after {
    background-image: url(/wp-content/themes/story_tcd041/img/front-third_01.jpg);
}
.third-box .front-third-inner.third02::after {
    background-image: url(/wp-content/themes/story_tcd041/img/front-third_02.jpg);
}
.third-box .front-third-inner.third03::after {
/*     background-image: url(/wp-content/themes/story_tcd041/img/front-third_03.jpg); */
	background-image: url(/wp-content/uploads/2025/06/point3.jpg);
}
.front-third-text {
    padding: 22% 8%;
    box-sizing: border-box;
}
.front-third-text:before {
    content: 'Point.01';
    display: block;
    font-size: 2.4em;
    letter-spacing: 1px;
    margin-bottom: 12px;
    line-height: 1;
    font-weight: 500;
    color: #6cbc39;
}
.front-third-text.third_text02:before {
    content: 'Point.02';
}
.front-third-text.third_text03:before {
    content: 'Point.03';
}
.front-third-text.third_text04:before {
    content: 'Point.04';
}
h3.third_title {
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.7;
    margin-bottom: 10px;
    letter-spacing: 0.5px;
    color: #9a4894;
}
p.third_text {
    margin-bottom: 0;
    line-height: 2.4;
}
/*--お知らせ--*/
section.front_topics {
    padding-top: 100px;
    padding-bottom: 100px;
    background: #faf3f9;
    position: relative;
    z-index: 0;
    margin-bottom: -150px;
}
section.front_topics::after {
    content: '';
    position: absolute;
    display: block;
    background: #fff;
    width: 100%;
    height: 380px;
    top: 0;
    left: 0;
    z-index: -1;
}
h2.front_topics_first {
    font-size: 1.8em;
    font-weight: 500;
    letter-spacing: 0px;
    margin-bottom: 50px;
    text-align: center;
    color: #9a4894;
}
h2.headline-primary {
    display: none;
}
.article03 {
    box-sizing: border-box;
    border: 1px solid #c4c4c4;
    border-radius: 15px;
}
.article03-thumbnail {
    box-sizing: border-box;
    border-radius: 15px 15px 0 0;
}
.article03-content {
    background: #fff;
    padding: 15px 20px;
    border-radius: 0 0 15px 15px;
}
.headline-font-type.article03-title {
    color: #c26d7b;
    font-size: 0.95em;
}
.article03-date, .article03-category-item {
    font-size: 12px;
}
@media only screen and (max-width: 1200px) {
    .content02-inner {
        width: 90%;
    }
    section.original03::before {
        background-position: right;
    }
    section.original03::after {}
    .third-box {
        margin-bottom: 50px;
    }
    h3.third_title {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .front-third-text::after {
        background-size: contain;
        background-position: left center;
        width: 100%;
    }
    section.front_topics {}
    h2.front_topics_first {
        font-size: 33px;
        margin-bottom: 40px;
    }
}
@media only screen and (max-width: 1024px) {
    .front_intro_inner h2 {
        font-size: 1.6em;
    }
    .content02-inner {
        padding: 50px 0;
    }
}
@media only screen and (max-width: 970px) {
    .front_intro-outer::after {
        position: relative;
        height: 450px;
        display: block;
        width: 95%;
        margin-top: 8%;
    }
    .front_intro-outer .inner {
        width: 100%;
    }
    .front_intro_inner {
        padding: 0px 7%;
    }
    .original05-text {
        padding: 0;
    }
    .content02 {
        padding-bottom: 30px;
        padding-top: 10px;
    }
    .content02:after {
        height: 100%;
    }
    .content02-inner {
        display: -webkit-box;
        display: block;
        width: 85%;
    }
    .content02-item {
        width: 100%;
        margin: 0;
    }
    .content02-item {
        margin-bottom: 20px !important;
    }
    .content02-item:nth-of-type(2) {
        top: 0px;
    }
    .content02-item:nth-of-type(3) {
        top: 0px;
    }
    .content02-button {
        height: 50px;
        line-height: 50px;
    }
    section.original03::before {
        width: 100%;
    }
    section.original03::after {
        width: 100%;
    }
    .original03-text {
        padding: 0;
    }
    section.front-third_title h2 {
        font-size: 28px;
        letter-spacing: 4px;
    }
    section.front-third {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .third-box {
        margin-bottom: 0;
    }
    .front-third-inner {
        padding-top: 400px;
        padding-right: 0;
    }
    .third-box:nth-of-type(2n) .front-third-inner {
        padding-left: 0;
    }
    .third-box .front-third-inner::after {
        width: 100%;
        height: 400px;
    }
    .third-box .front-third-inner.third01::after {
        background-position: top;
    }
    .front-third-text {
        padding: 6%;
    }
    p.third_text {
        line-height: 2;
    }
    .front-third-text:before {}
    .article03-content {
        padding: .8em;
    }
}
@media only screen and (max-width: 768px) {
    .content02:before, .content02:after {
        width: 100%;
        height: 100%;
    }
    .content02-item {
        margin-bottom: 50px !important;
    }
    .content02-button {
        width: 100%;
        max-width: initial;
        position: relative;
        margin: 0 auto;
        left: 0;
        bottom: 0;
    }
    section.original05 {
        padding: 6em 0;
    }
    section.original03 {
        padding: 6em 0;
    }
    section.original03::before {
        width: 100%;
    }
    section.original03::after {}
    section.front-third_title h2 {
        font-size: 25px;
        letter-spacing: 3px;
    }
    h3.third_title {
        font-size: 18px;
        margin-bottom: 10px;
    }
    section.front_topics {
        padding-top: 50px;
    }
    section.front_topics:after {
        height: 35%;
    }
    h2.front_topics_first {
        font-size: 2.1em;
        margin-bottom: 25px;
    }
    h2.headline-font-type.article03-title {
        font-size: 13px !important;
    }
}
@media only screen and (max-width: 500px) {
    #content01 {}
    .front_intro_inner h2 {
        font-size: 1.4em;
        margin-bottom: 22px;
    }
    .front_intro_inner p {
        line-height: 2.3;
    }
    .front_intro-outer::after {
        width: 100%;
        height: 300px;
    }
    .content02 {
        padding-bottom: 0px;
    }
    .content02:before {
        width: 100%;
    }
    .content02:after {
        width: 100%;
        left: 0%;
    }
    .content02-img {
        height: auto;
    }
    .content02-title {
        font-size: 1.2em;
    }
    section.original03::before {
        width: 100%;
    }
    section.original03::after {
        width: 100%;
    }
    .original03-text h2 {
        font-size: 1.3em;
    }
    h3.third_title {}
    .main {
        margin-bottom: 0px;
    }
    .front-third-inner {
        padding-top: 300px;
    }
    .third-box .front-third-inner::after {
        height: 300px;
    }
}
/*----------------------------------------------------------
	Instagram埋め込み
----------------------------------------------------------*/
section#instagram_feed {
    padding: 9rem 0 7rem;
    background: #ffffff;
}
.instagram_feed_inner {
    margin: 0 auto;
    max-width: 125rem;
    width: 86%;
}
section#instagram_feed .flex_lay_box {
    width: calc(35% - 1.25rem);
}
section#instagram_feed .flex_lay_box:nth-child(even) {
    width: calc(65% - 1.25rem);
}
h2.instagram_title {
    text-align: center;
    font-size: 2.0rem;
    letter-spacing: 0.25rem;
    font-weight: 600;
    line-height: 1.5;
    position: relative;
    color: #000000;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
h2.instagram_title::before {
    content: "\f16d";
    font-family: 'fontawesome';
    line-height: 1.2;
    font-size: 2.5rem;
    font-weight: 300;
    margin-right: 0.5rem;
    display: block;
}
#sb_instagram .sbi_follow_btn a {
    max-width: 35rem;
    font-size: 1.2rem;
    height: 5.5rem;
    line-height: 5.5rem;
    background: #F2F2F2 !important;
    color: #8C8C8C;
    transition: all .5s;
    padding: 0 5rem;
    position: relative;
    margin-top: 2.5rem;
    border-radius: 0;
}
@media screen and (max-width:1200px) {
    section#instagram_feed {}
}
@media screen and (max-width:900px) {
    section#instagram_feed .flex_lay_box, section#instagram_feed .flex_lay_box:nth-child(even) {
        width: 100%;
    }
}
@media screen and (max-width:500px) {
    section#instagram_feed {
        padding: 3rem 0 3rem;
    }
}
@media screen and (max-width:485px) {
    #sb_instagram.sbi_col_4 #sbi_images .sbi_item {
        width: 50% !important;
    }
}
/*----------------------------------------------------------
フッター
----------------------------------------------------------*/
.footer {
    padding: 25px 0 0;
    margin: 0 auto;
    margin-top: 150px;
    position: relative;
    background-color: #e373a2;
    color: #fff;
}
.footer-gallery {
    display: none;
}
.footer-content {
    display: none;
}
.footer_original_content {
    padding: 50px 0 40px;
    position: relative;
}
.footer_original_content:after {}
.footer_about_inner {
    width: 90%;
    margin: 0 auto;
    max-width: 1150px;
}
.footer_contact_bg {
    width: 50%;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: middle;
}
.footer_content_bg {
    width: 50%;
    padding-left: 50px;
    padding-top: 10px;
    box-sizing: border-box;
    float: right;
}
.footer_contact_box h2 {
    font-size: 23px;
    font-weight: 500;
    letter-spacing: 1px;
}
.footer_contact_box h2 span {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
}
p.address_text {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 7px;
    margin-bottom: 18px;
}
p.address_text span {
    font-size: 12px;
}
address.footer_tel {
    font-size: 2.2em;
    font-style: normal;
    letter-spacing: 2px;
    margin: 10px 0 10px;
    line-height: 1 !important;
    font-weight: 600;
}
address.footer_tel span.tel-link {
    color: #ff8397 !important;
}
span.footer_tel_sab {
    font-size: 12px;
    margin-right: 5px;
}
a.footer_but.footer_contact_but {
    display: block;
    width: 100%;
    max-width: 300px;
    text-align: left;
    line-height: 50px;
    box-sizing: border-box;
    padding: 0 20px;
    color: #000000;
    position: relative;
    border: 1px solid #ffd700;
    margin-top: 2em;
    background: #ffd700;
}
a.footer_but.footer_contact_but:hover {
    color: #000000;
    border: 1px solid #ffe039;
    background: #ffe039;
}
a.footer_but.footer_contact_but::before {
    font-weight: 400;
    position: absolute;
    right: 20px;
    font-family: "design_plus";
    content: "\f0e0";
    font-size: 1.6em;
}
a.footer_but.footer_line_but {
    display: block;
    width: 100%;
    max-width: 300px;
    text-align: left;
    line-height: 50px;
    box-sizing: border-box;
    padding: 0px 25px;
    color: #ffffff;
    font-size: 0.9em;
    font-weight: 600;
    position: relative;
    margin-top: 1em;
    background: #00b900;
    border-radius: 30px;
}
a.footer_but.footer_line_but:hover {
    color: #ffffff;
    background: #28cb28;
}
a.footer_but.footer_line_but::before {
    font-weight: 400;
    position: absolute;
    right: 20px;
    font-family: "design_plus";
    content: "\e909";
    font-size: 1.8em;
}
h3.footer_content_title {
    font-size: 1.3em;
    letter-spacing: 1px;
    margin-bottom: 5px;
    font-weight: 600;
}
ul.footer-content-list-outer {
    width: 50%;
    box-sizing: border-box;
}
ul.footer-content-list-outer li {
    line-height: 1.6;
}
ul.footer-content-list-outer li:last-of-type {
    margin-bottom: 0;
}
a.footer_nav {
    font-size: 12px;
    font-weight: 500;
    color: #fff;
}
a.footer_nav:hover {
    color: #fff;
    padding-left: 10px;
    transition: all .5s;
    transform: translateX(1rem);
}
.footer-content {
    display: none;
}
.social-nav-item a:before {
    color: #fff;
}
a.footer_linkbnr {
    margin-top: 15px;
    margin-right: 10px;
}
a.footer_linkbnr:hover {
    opacity: 70%;
    transition: all .5s;
    transform: translateX(1rem);
}
p.copyright {
    margin-bottom: 0;
    color: #fff;
}
.footer-bar01,
.copyright {
    background: none;
}
div#pagetop a {
    border-radius: 100em;
    margin: 0 20px 30px 0;
}
.pagetop a:before {
    bottom: 20px;
}
.dp-footer-bar-item {
    background: #df4c89;
}
.dp-footer-bar a {
    color: #fff;
}
a.footer-con_but {
    display: inline-block;
    position: relative;
    width: 42px;
    height: 42px;
    line-height: 42px;
    border-radius: 20px;
    text-align: center;
    margin-right: 5px;
    background: #d9bd9c;
    transition: all .8s;
    font-size: 23px;
}
.footer-con-sns-but {
    margin-top: 1em;
}
a.footer-con_but span {
    display: none;
}
a.footer-con_but::before {
    font-family: 'design_plus';
    color: #fff;
    z-index: 1;
}
a.footer-con_but.footer-instagram_but::before {
    content: "\ea92";
}
a.footer-con_but.footer-line_but::before {
    content: "\e909";
}
a.footer-con_but.footer-facebook_but::before {
    content: "\f09a";
}
a.footer-con_but.footer-mail_but::before {
    content: "\f0e0";
}
a.footer-con_but.footer-twitter_but::before {
    content: "\e61b";
}
a.footer-con_but.footer-instagram_but {
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}
a.footer-con_but.footer-line_but {
    background-color: #18c507;
}
a.footer-con_but.footer-twitter_but {
    background: #000;
}
a.footer-con_but.footer-facebook_but {
    background: #3B5998;
}
a.footer-con_but.footer-mail_but {
    background-color: #9561bf;
}
a.footer-con_but:hover {
    opacity: 65%;
}
.icon-pencil:before {
    content: "\e909";
}
.icon-tag:before {
    content: "\ea92";
}
@media only screen and (max-width: 1200px) {
    .footer_original_content {
        padding: 50px 0 30px;
    }
    .footer_contact_box h2 {
        font-size: 20px;
    }
    .footer-content {
        margin: 30px auto 10px;
    }
}
@media only screen and (max-width: 970px) {}
@media only screen and (max-width: 767px) {
    .footer {
        margin-top: 80px;
    }
    .footer_original_content {
        padding: 40px 0 30px;
    }
    p.address_text {
        font-size: 10px;
        line-height: 1.8;
        margin-bottom: 10px;
    }
    address.footer_tel {
        font-size: 23px;
        margin-bottom: 10px;
    }
    h3.footer_content_title {
        font-size: 14px;
        margin-bottom: 10px;
    }
    ul.footer-content-list-outer li {
        font-size: 11px;
        line-height: 1.5;
        margin-bottom: 10px;
    }
    .footer-content {
        margin: 25px auto 15px;
    }
    .social-nav {}
    .dp-footer-bar a {
        color: #fff !important;
    }
    .dp-footer-bar {
        background: #f6c071 !important;
        border-top: solid 1px #fff !important;
    }
    .dp-footer-bar-item + .dp-footer-bar-item {
        border-left: solid 1px #fff !important;
    }
    [class^="icon-"],
    [class*=" icon-"] {
        font-family: ;
    }
}
@media only screen and (max-width: 500px) {
    .footer_contact_bg,
    .footer_content_bg {
        width: 100%;
    }
    .footer_content_bg {
        padding-top: 40px;
        padding-left: 0;
    }
}
/*----------------------------------------------------------
	固定ページ  ヘッダー
----------------------------------------------------------*/
.headline-font-type {
    letter-spacing: 0.2em;
    font-weight: 500;
}
.breadcrumb-wrapper {
    background: none;
}
.breadcrumb li a, .breadcrumb li {
    color: #5a625a;
}
.signage {
    height: 270px;
    background-image: url(/wp-content/themes/story_tcd041/img/header_img.jpg) !important;
    background-size: cover;
    /*background-size: 1000px !important;
    background-repeat: repeat !important;*/
}
.signage::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #ffffff82;
}
.signage-title.headline-font-type {
    font-size: 2em !important;
    margin-bottom: -10px;
    text-shadow: none;
    text-align: center;
    color: #54463b !important;
    font-weight: 500;
    letter-spacing: 5px;
    position: relative;
}
.signage-title-sub {
    font-size: 0.9em !important;
    letter-spacing: 1px;
    font-weight: 400;
    text-shadow: none;
    margin-bottom: 0;
    color: #691461 !important;
    position: relative;
}
@media only screen and (max-width: 1200px) {
    /*.signage {
    height: 270px;
  }*/
    .signage-title.headline-font-type {
        margin-bottom: -10px;
    }
}
@media only screen and (max-width: 970px) {
    /*.signage {
    height: 210px;
  }*/
}
@media only screen and (max-width: 767px) {
    /*.signage {
    height: 230px;
  }*/
    .signage-title.headline-font-type {
        font-size: 2em !important;
    }
    .signage-title-sub {
        font-size: 13px !important;
    }
}
@media only screen and (max-width: 500px) {
    .signage-title.headline-font-type {
        margin-bottom: 0;
    }
}
/*----------------------------------------------------------
	固定ページ  枠組み、レイアウト
----------------------------------------------------------*/
.content-section {
    margin-top: 0px;
    margin-bottom: 0px;
}
.content_inner {
    width: 85%;
    max-width: 1150px;
    margin: 0 auto 0;
    padding: 10px 0 0 0;
    box-sizing: border-box;
    position: relative;
}
.content-innr-01 {
    background: #fff0;
    padding: 70px 8.5%;
    margin: 0 auto;
    box-sizing: border-box;
}
.content-innr-02 {
    background: #fdfff5;
    padding: 70px 8.5%;
    margin: 0 auto;
    box-sizing: border-box;
}
.c-pc-w90 {
    width: 90%;
    margin: auto;
}
.c-pc-w70 {
    width: 70%;
    margin: auto;
}
.c-pc-w50 {
    width: 50%;
    margin: auto;
}
.l-Box1 {
    width: 15%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4.4%;
}
.l-Box2 {
    width: 18;
    display: inline-block;
    vertical-align: top;
    margin-right: 4.4%;
}
.l-Box3 {
    width: 28%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4.4%;
}
.l-Box4 {
    width: 38%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4.4%;
}
.l-Box5 {
    width: 47%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4.4%;
}
.l-Box6 {
    width: 57%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4.4%;
}
.r-Box4 {
    width: 38%;
    display: inline-block;
    vertical-align: top;
}
.r-Box5 {
    width: 47%;
    display: inline-block;
    vertical-align: top;
}
.r-Box6 {
    width: 56%;
    display: inline-block;
    vertical-align: top;
}
.r-Box7 {
    width: 66%;
    display: inline-block;
    vertical-align: top;
}
.r-Box8 {
    width: 69%;
    display: inline-block;
    vertical-align: top;
}
.r-Box9 {
    width: 80%;
    display: inline-block;
    vertical-align: top;
}
.box {
    background: #fff9f8;
    padding: 20px 30px 10px;
    margin-bottom: 20px;
    line-height: 2;
}
.box2 {
    background: #ffffff;
    padding: 20px 30px 10px;
    margin-bottom: 20px;
    line-height: 2;
}
.rank {
    margin-bottom: 50px;
}
.flex-inner {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
@media only screen and (max-width: 1200px) {
    .content_inner {
        padding: 80px 0;
    }
}
@media only screen and (max-width: 991px) {
    .content-innr-01, .content-innr-02 {
        padding: 70px 7.5%;
    }
    .l-Box3, .l-Box4, .l-Box5, .l-Box6 {
        width: 100%;
        margin: 0 0 15px;
    }
    .r-Box4, .r-Box5, .r-Box6, .r-Box7 {
        width: 100%;
    }
}
@media only screen and (max-width: 767px) {
    .content-section {
        margin-top: 0px;
        margin-bottom: 0px;
    }
    .content_inner {
        padding: 50px 0;
    }
    .content-innr-01, .content-innr-02 {
        padding: 50px 5%;
    }
    .c-pc-w90, .c-pc-w70, .c-pc-w50 {
        width: 100%;
    }
    .l-Box1 {
        width: 100%;
        margin: 0 0 15px;
    }
    .r-Box9 {
        width: 100%;
    }
}
@media only screen and (max-width: 667px) {
    .box, .box2 {
        padding: 30px 15px;
    }
    .l-Box2 {
        width: 100%;
        margin: 0 0 15px;
        text-align: center;
    }
    .r-Box8 {
        width: 100%;
    }
}
/*----------------------------------------------------------
	固定ページ 共通, 装飾
----------------------------------------------------------*/
.post-content img {
    /*border-radius: 13px;
     box-shadow: 0 4px 20px 0 rgb(0 0 0 / 10%);*/
}
.q_button {
    background-color: #e5ac37;
}
.q_button:hover {
    background: #ffd267;
}
.line {
    background: linear-gradient(transparent 70%, #c99f256b 0%);
    font-weight: bold;
}
.mb100 {
    margin-bottom: 100px;
}
.mb90 {
    margin-bottom: 90px;
}
.mb80 {
    margin-bottom: 80px;
}
.mb70 {
    margin-bottom: 70px;
}
.mb60 {
    margin-bottom: 60px;
}
.mb50 {
    margin-bottom: 50px;
}
.mb40 {
    margin-bottom: 40px;
}
.mb30 {
    margin-bottom: 30px;
}
.mb20 {
    margin-bottom: 20px;
}
.mb10 {
    margin-bottom: 10px;
}
/*----------------------------------------------------------
	固定ページ h, p, a, 
----------------------------------------------------------*/
.post-content h2 {
    padding: 0;
    font-size: 1.4rem;
    line-height: 1.6;
    font-weight: 600;
    text-align: center;
    margin-bottom: 40px;
    letter-spacing: 0.1em;
    color: #9a4894;
}
.post-content h2:after {
    content: '';
    background: #94c64d;
    width: 20px;
    height: 2px;
    display: block;
    margin: 15px auto 0;
    border-radius: 15px;
}
.post-content h3 {
    font-size: 1.2em;
    letter-spacing: 1px;
    color: #ffffff;
    font-weight: 500;
    line-height: 2;
    margin: 0px 0px 20px;
    position: relative;
    padding: 0.2em 0.1em 0.15em 0.7em;
    background: #6ca06c;
}
.post-content h3 span {
    font-size: 0.8em;
    line-height: 2;
    font-weight: 600;
    color: #bd9b37;
    margin-bottom: 1em;
    margin-top: 0.5em;
    background: #fff;
    padding: 0.25em 0.35em 0.25em 0.4em;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    border-radius: 4px;
    margin-right: 10px;
}
.post-content h4 {
    color: #54463b;
    margin-bottom: 30px;
    padding-bottom: 10px;
    font-size: 16px;
    font-weight: 600;
    border-bottom: 1px dashed;
    line-height: 1.8;
    vertical-align: middle;
    text-align: left;
}
.post-content h4 span {
    color: #af9775;
    margin-bottom: 30px;
    padding-bottom: 10px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.8;
    vertical-align: middle;
    text-align: left;
}
a, .post-content a {
    color: #6e4f2e;
}
p, .post-content p {
    font-size: 0.9em;
    line-height: 2.1;
    font-weight: 400;
    margin-bottom: 15px;
}
.post-content p.center {
    text-align: center;
}
.post-content p.price {
    font-size: 1.3em;
    color: #bc8f8f;
    line-height: 2.1;
    font-weight: 700;
    margin-bottom: 15px;
}
.post-content p.campagin {
    position: relative;
    padding: 1rem 2rem calc(1rem + 10px);
    background: #e9ced8;
    font-size: 18px;
    font-weight: 500;
    color: #000;
    text-align: center;
}
.post-content p.campagin:before {
    position: absolute;
    top: -11px;
    left: -12px;
    width: 100%;
    height: 100%;
    content: '';
    border: 2px solid #000;
}
.post-content p.name {
    font-size: 18px;
    font-weight: 500;
    color: #8cb99c;
    text-align: right;
}
.post-content p.name span {
    font-size: 15px;
    font-weight: 500;
    color: #a57849;
    text-align: right;
}
.post-content p.name {
    font-size: 18px;
    font-weight: 500;
    color: #8b7665;
    text-align: right;
}
.post-content p span.course {
    font-size: 15px;
    font-weight: 600;
    color: #151515;
    background: #FFE8B7;
    text-align: left;
    margin-bottom: 20px;
    padding: 5px 10px;
}
@media only screen and (max-width: 1200px) {
    p, .post-content p {
        font-size: 14px;
    }
}
@media only screen and (max-width: 767px) {
    .post-content h2 {
        font-size: 1.3em;
    }
    .post-content h3 {
        font-size: 1.2em;
    }
    .post-content h4 {
        font-size: 1.1em;
    }
}
@media only screen and (max-width: 480px) {
    .post-content p.center {
        text-align: left;
    }
}
/*----------------------------------------------------------
	固定ページ table 
----------------------------------------------------------*/
.post-content table {
    width: 100%;
    table-layout: fixed;
    white-space: inherit;
    -webkit-overflow-scrolling: touch;
}
.post-content tbody {
    border: none;
}
.post-content td, .post-content th {
    border: 2px solid #e1d8d3;
    padding: 25px 25px 22px;
    line-height: 1.8;
    background: none;
}
.post-content th {
    background: #fef7fe;
    font-weight: 500;
    width: 60%;
    text-align: left;
    vertical-align: middle;
}
.post-content td {
    background-color: #fff;
    font-size: 16px !important;
    font-weight: 500;
}
@media only screen and (max-width: 1200px) {
    .block-table--responsive {
        overflow: auto;
        white-space: nowrap;
        padding-bottom: 50px;
    }
    .block-table--responsive {}
    .block-table--responsive:before {
        content: "※この料金表は横にスクロールできます。";
        color: #a64f36;
        font-size: 100%;
    }
    .post-content table {
        table-layout: inherit;
    }
    .post-content td {
        min-width: 200px;
    }
}
@media only screen and (max-width: 767px) {
    /*  .post-content th {
    box-sizing: border-box;
    width: 100%;
    display: block;
}
.post-content td {
    box-sizing: border-box;
    width: 100%;
    display: block;
}*/
    .post-content td {
        text-align: center;
    }
}
/*----------------------------------------------------------
	リスト, ul,li,
----------------------------------------------------------*/
.post-content ul {
    list-style: disc;
}
.post-content ul {
    background: #f4f2ee;
    padding: 15px 15px 9px 15px;
    border-radius: 10px;
    position: relative;
    margin: 0px 0 5px 0;
    display: flex;
    flex-wrap: wrap;
}
.post-content li {
    font-size: 16px;
    list-style-type: none !important;
    line-height: 1.6em;
    padding: 4px 0 4px 40px;
    margin-bottom: 10px;
    color: #69573e;
    font-weight: 500;
    flex: auto;
    width: 40%;
}
.post-content li:before {
    font-family: "Font Awesome 6 Free";
    content: '\f14a';
    position: absolute;
    left: 1.25em;
    color: #b6a788;
    font-weight: 600;
    font-size: 1.25em;
    margin-left: -30px;
    left: auto;
}
.post-content ul.cau {
    background: #fffcf5;
    padding: 25px 15px 15px 15px;
    border-radius: 0px;
    position: relative;
    margin: 0px 0 20px 0;
}
.post-content ul.cau li {
    font-size: 15px;
    list-style-type: none !important;
    line-height: 1.6em;
    padding: 4px 0 4px 40px;
    margin-bottom: 10px;
    color: #111;
    font-weight: 500;
    flex: auto;
    width: 100%;
}
.post-content ul.cau li:before {
    font-family: "Font Awesome 6 Free";
    content: '\f14a';
    position: absolute;
    left: 2.5em;
    color: #78a7df;
    font-weight: 600;
    font-size: 1.3em;
}
.post-content ul.wecan {
    background: #f8f7f7;
    padding: 25px 15px 15px 15px;
    border-radius: 0px;
    position: relative;
    margin: 0px 0 5px 0;
}
.post-content ul.wecan li {
    font-size: 15px;
    list-style-type: none !important;
    line-height: 1.6em;
    padding: 4px 0 4px 40px;
    margin-bottom: 10px;
    color: #69573e;
    font-weight: 500;
    flex: auto;
    width: 100%;
}
.post-content ul.wecan li:before {
    font-family: "Font Awesome 6 Free";
    content: '\f4be';
    position: absolute;
    left: 2.5em;
    color: #D3B8BC;
    font-weight: 600;
    font-size: 1.3em;
}
@media only screen and (max-width: 767px) {
    .post-content li {
        font-size: 15px;
    }
}
/*----------------------------------------------------------
	2カラムコンテンツBOX	 
----------------------------------------------------------*/
.flex_lay {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.kp-content {
    margin-bottom: 1rem;
}
.kp-content:last-of-type {
    margin-bottom: 0;
}
.service-container {
    /* border-top: 2px dashed #f9f3ec; */
    /* border-left: 2px dashed #f9f3ec; */
    box-sizing: border-box;
}
.0000-box {
    width: 50%;
    box-sizing: border-box;
    /* border-right: 2px dashed #f9f3ec; */
    /* border-bottom: 2px dashed #f9f3ec; */
    padding: 2em;
    background: #fff0;
}
.flex_service-item img {
    width: 100%;
}
@media screen and (max-width: 1200px) {
    .kp-content {}
}
@media only screen and (max-width: 768px) {
    .0000-box {
        width: 100%;
    }
}
@media screen and (max-width: 600px) {}
/*----------------------------------------------------------
メニュー 
----------------------------------------------------------*/
.content-service td {
    text-align: right;
}
.content-service th.th_ttl,
.content-service td.td_ttl {
    background: #ffecff;
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
}
.content-service th span {
    font-size: 0.95rem;
    color: #4a9719;
}
/*----------------------------------------------------------
流れ 
----------------------------------------------------------*/
.flow-box {
    display: block;
    position: relative;
    padding-left: 82px;
    max-width: 700px;
    padding-bottom: 60px;
    margin: 0 auto;
}
.flow-box::before {
    counter-increment: number 1;
    content: counter(number);
    background: #e373a2;
    display: block;
    position: absolute;
    width: 56px;
    height: 56px;
    text-align: center;
    line-height: 53px;
    left: 0px;
    color: #fff;
    font-size: 1.7em;
    font-weight: 500;
    top: 0;
    z-index: 2;
    box-sizing: border-box;
    border-radius: 100%;
}
.flow-box:last-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
}
.flow-box::after {
    height: 100%;
    width: 1px;
    content: "";
    top: 0;
    left: 28px;
    background: #e373a2;
    display: block;
    position: absolute;
    z-index: 0;
}
.flow-box:last-child::after {
    content: none;
    height: 0;
}
.flow-box h4 {
    text-align: left;
    font-size: 1.3em;
    margin-bottom: 5px;
    border: none;
    color: #e373a2;
}
a.flowcon {
    font-size: 1em;
    padding: 7px 35px 8px;
    display: inline-block;
    position: relative;
    color: #ffffff;
    background: #9a4894;
    border: 2px solid;
    box-sizing: border-box;
    margin: 20px 0;
    border-radius: 30px;
}
a.flowcon:hover {
    background: #ee82ee;
    color: #fff;
}
@media screen and (max-width: 736px) {
    .flow-box h4 {
        font-size: 1.2em;
    }
}
@media screen and (max-width: 500px) {
    .flow-box {
        padding-left: 80px;
    }
}
/*----------------------------------------------------------
	FAQ
----------------------------------------------------------*/
.faq_inner {
    max-width: 750px;
    margin: 0 auto;
}
.faq {
    margin-bottom: 55px;
    padding-bottom: 40px;
    border-bottom: 1px dotted #cbc4ba;
}
.faq:last-of-type {
    margin-bottom: -40px;
    border-bottom: none;
}
.faq h3 {
    font-size: 1.2em;
    line-height: 1.5;
    padding: 5px 0 0 45px;
    margin-bottom: 10px;
    text-align: left;
    position: relative;
    z-index: 10;
    color: #e373a2;
    background: none;
    font-weight: 500;
    border: none;
}
.faq h3:before {
    content: 'Q.';
    font-size: 35px;
    line-height: 30px;
    color: #e373a2;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    margin: 0;
    font-weight: 500;
}
.faq h3:after {
    content: none;
}
p.answer {
    padding: 19px 0px 0px 47px;
    margin-bottom: 0;
    position: relative;
    font-size: 16px;
    border-radius: 10px;
}
p.answer:before {
    content: 'A.';
    font-size: 35px;
    color: #6cbc39;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    line-height: 23px;
    padding: 20px 0 0 2px;
    font-weight: 500;
}
p.answer span {
    font-size: 13px;
}
a.faqcon {
    font-size: 1em;
    padding: 7px 35px 8px;
    display: inline-block;
    position: relative;
    color: #ffffff;
    background: #9a4894;
    border: 2px solid;
    box-sizing: border-box;
    margin: 20px 0;
    border-radius: 30px;
}
a.faqcon:hover {
    background: #ee82ee;
    color: #fff;
}
@media only screen and (max-width: 970px) {
    .faq {
        margin-bottom: 50px;
    }
    .faq h3 {
        font-size: 20px;
        margin-bottom: 20px;
        padding: 3px 0 0 40px;
    }
    .faq h3:before {
        font-size: 26px;
    }
    p.answer {
        padding: 16px 0px 0px 40px;
    }
    p.answer:before {
        font-size: 26px;
    }
}
@media only screen and (max-width: 767px) {
    .faq {
        margin-bottom: 40px;
    }
    .faq h3 {
        font-size: 18px;
        padding: 2px 0 0 30px;
        margin-bottom: 15px;
    }
    .faq h3:before {
        font-size: 22px;
        width: 30px;
        height: 30px;
        line-height: 28px;
    }
    p.answer {
        padding: 16px 0px 0px 30px;
    }
    p.answer:before {
        font-size: 23px;
    }
}
@media only screen and (max-width: 500px) {
    .faq h3 {
        font-size: 1.1em;
        padding: 5px 0 0 30px;
    }
    p.answer {
        font-size: 0.85em;
        padding: 7px 0px 0px 30px;
    }
    p.answer:before {
        padding: 7px 0 0 2px;
    }
}
/*----------------------------------------------------------
	ごあいさつ
----------------------------------------------------------*/
.content-greeting p.name {
    font-size: 1.1em;
    font-weight: 500;
    color: #9a4894;
    text-align: right;
}
.content-greeting p.name span {
    font-size: 0.8em;
    font-weight: 500;
    text-align: right;
    color: #9a4894;
}
/*----------------------------------------------------------
	コンタクト ページ
----------------------------------------------------------*/
p.telcenter {
    text-align: center;
}
span.contel {
    font-size: 2.6em;
    letter-spacing: 3px;
    color: #efbdac;
    text-align: center;
    line-height: 1.8;
    font-weight: 500;
}
.tel-link {
    color: #dc879c !important;
}
p.tel_info_box {
    font-size: 17px;
    line-height: 2;
    font-weight: 500;
    margin-bottom: 15px;
    text-align: center;
}
.snsbnr {
    margin: 30px 0;
    max-width: 240px !important;
    border-radius: 0 !important;
}
img.snsbnr:hover {
    opacity: 50%;
    transition: 0.5s;
}
a.webreserve {
    letter-spacing: 0.1em;
    font-size: 17px;
    padding: 16px 45px 14px;
    display: inline-block;
    position: relative;
    color: #d2a300;
    background: #ffffff;
    border: 1px solid;
    box-sizing: border-box;
    margin: 20px 0;
    border-radius: 8px;
}
a.webreserve:hover {
    background: #d2a300;
    color: #fff;
}
img.yoyaku_bunner {
    border-radius: 0;
}
img.yoyaku_bunner:hover {
    opacity: 50%;
    transition: 0.5s;
}
address.about_tel {
    font-size: 2.2em;
    font-style: normal;
    letter-spacing: 2px;
    margin: 1px 0 10px;
    line-height: 1 !important;
    font-weight: 600;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.wpcf7 {
    border: none;
    background: #f1f9f1;
    width: 98%;
    padding: 10px !important;
    border-radius: 15px;
}
.wpcf7 input, .wpcf7 textarea {
    border: 1px solid #eee9e3;
    border-radius: 8px;
    line-height: 2;
}
.wpcf7 input.wpcf7-submit {
    background-color: #dc879c;
    border-radius: 40px;
}
.wpcf7 input.wpcf7-submit:hover {
    background-color: #e9aab5;
    border-radius: 40px;
}
@media only screen and (max-width: 992px) {
    span.contel {
        font-size: 36px;
    }
}
@media only screen and (max-width: 767px) {
    h2.con_title {
        font-size: 14px;
        margin-bottom: 15px;
    }
    h2.con_title:before {
        font-size: 27px;
        margin-bottom: 3px;
    }
    .wpcf7 {
        padding: 10px 0 !important;
    }
}
@media only screen and (max-width: 500px) {
    span.contel {
        font-size: 29px;
        letter-spacing: 3px;
        ;
    }
    p.tel_info_box {
        font-size: 15px;
    }
}
.line-link__button {
    max-width: 300px;
    width: 100%;
    display: inline-block;
    padding: 10px;
    background: #00B900;
    transition: all 0.3s ease;
    border: 1px solid #00B900;
    color: #fff !important;
    border-radius: 100vmax;
    text-align: center;
    margin-top: 15px;
    position: relative;
    font-size: 1em;
}
.line-link__button span {
    padding-left: 42px;
}
.line-link__button span::before {
    position: absolute;
    content: "\e909";
    display: block;
    font-family: "design_plus";
    font-size: 30px;
    left: 30px;
    top: 50%;
    transform: translateY(-50%);
}
@media (any-hover: hover) {
    .line-link__button:hover {
        opacity: .6;
    }
}
.contact__link-buttons {
    display: flex;
    flex-wrap: wrap;
    column-gap: 30px;
    width: 100%;
    justify-content: center;
}
.air-r-link__button {
    max-width: 300px;
    width: 100%;
    display: inline-block;
    padding: 10px;
    background: #54463b;
    transition: all 0.3s ease;
    border: 1px solid #54463b;
    color: #fff !important;
    border-radius: 100vmax;
    text-align: center;
    margin-top: 15px;
    position: relative;
    font-size: 1em;
}
.air-r-link__button span {
    padding-left: 42px;
}
.air-r-link__button span::before {
    position: absolute;
    content: "\e953";
    display: block;
    font-family: "design_plus";
    font-size: 25px;
    left: 30px;
    top: 50%;
    transform: translateY(-50%);
}
@media (any-hover: hover) {
    .air-r-link__button:hover {
        opacity: .6;
    }
}
@media only screen and (max-width: 1200px) {
    .contact__link-buttons {
        column-gap: 5px;
    }
}
/*----------------------------------------------------------
	店舗概要
----------------------------------------------------------*/
table.about th {
    text-align: left;
    font-weight: 500;
    border: none;
    border-bottom: 1px dotted #bfb7aa;
    width: 27%;
    background: none;
    font-size: 1em;
    padding: 15px;
}
table.about td span {
    font-size: 0.85em;
}
table.about td {
    text-align: left;
    font-weight: 500;
    border: none;
    border-bottom: 1px dotted #bfb7aa;
    font-size: 0.9em !important;
    padding: 15px;
}
@media only screen and (max-width: 767px) {}
@media only screen and (max-width: 500px) {
    table.about th, table.about td {
        font-size: 0.8em !important;
    }
}
/*----------------------------------------------------------
	レイヤー 
----------------------------------------------------------*/
.message_box {
    background: url(/wp-content/themes/story_tcd041/img/about.jpg) no-repeat;
    background-size: 720px;
    background-position: right top;
    margin-bottom: 20px;
    padding: 255px 460px 0 0;
}
.message_text {
    background: #ffffffeb;
    padding: 40px 40px;
}
.message_text h3 {
    margin-top: 0;
}
p.last_text {
    margin: 0;
}
@media only screen and (max-width: 970px) {
    .message_box {
        background-size: auto;
        background-position: center top;
        padding: 500px 0 0 0;
    }
    .message_text {
        padding: 40px 0;
    }
}
/*----------------------------------------------------------
	投稿ページ 
----------------------------------------------------------*/
.widget_search #searchsubmit {
    background: #b8a581 url(img/common/icon_search.png) no-repeat center;
}
.post-title {}
.post-meta-box {
    background: #ffffff;
}
.side_widget .headline-bar {
    margin-bottom: 30px;
    padding: 10px 25px;
}
/*----------------------------------------------------------
	font 
----------------------------------------------------------*/
.global-nav > ul > li > a, .global-nav .sub-menu a, .content02-title, .content02-title, a.content02-button::after, .front-third-text:before, h2.front_topics_first, h2.footer_contact-title, .content02-title .flow_text::before, .faq h3:before, p.answer:before, .headline-font-type.article03-title, .headline-font-type {
    font-family: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
/*----------------------------------------------------------
	 block
----------------------------------------------------------*/
.page-id-22 .post-header,
.page-id-28 .post-header,
.page-id-34 .post-header {
    margin-top: 0;
    margin: 0;
}
.page-id-22 footer.footer,
.page-id-28 footer.footer,
.page-id-34 footer.footer {
    margin-top: 0;
}
/*----------------------------------------------------------
	 link先ヘッダ―値調整
----------------------------------------------------------*/
.anchor {
    padding-top: 100px !important;
    margin-top: -100px !important;
}
/*----------------------------------------------------------
	 改行
----------------------------------------------------------*/
/*PCでは無効（改行しない）*/
.sp-br {
    display: none;
}
.pc-br {
    display: block;
}
/*スマートフォンでは有効（改行する）*/
@media screen and (max-width:500px) {
    .sp-br {
        display: block;
    }
    .pc-br {
        display: none;
    }
}