@charset "UTF-8";
/**====================================
 * CSS information
 * file name	: style-sp.css
 * author		: libretto works
====================================**/
@media screen and (max-width: 767px) {
	
    /*/////////////////////////////////////////////////////////////////////////////


              // TOP //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    
    /* visual  ---------------------------------------- */
    .visual {
        margin-bottom: 60px;
    }
    .visual-inner {
        padding: 0;
        position: relative;
    }
    .visual-fig {
        padding: 0;
    }
    .visual-fig .thumb {
        height: calc(100vh - 85px);
        border-radius: 0;
    }
    .visual-fig .thumb::after {
        
    }
    .visual-label {
        width: 120px;
        right: inherit;
        left: 2.5%;
        bottom: inherit;
        top: 25px;
    }
    .visual-ttl {
        left: 4%;
        top: inherit;
        bottom: 12.5%;
        transform: none;
    }
    .visual-ttl .ttl {
        font-size: 1.2rem;
        line-height: 1.9;
        margin-bottom: 6px;
    }
    .visual-ttl .subttl {
        font-size: 2.5rem;
        line-height: 1.6;
    }
    .visual-ttl .subttl span {
        display: block;
    }
    .visual-ttl .lead {
        font-size: 1.2rem;
        line-height: 2;
        margin-top: 6px;
    }
    .visual-ttl .ttl,
    .visual-ttl .subttl,
    .visual-ttl .lead {
        text-shadow:  0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa, 0 0 6px #fffdfa;
    }
    /* scroll  ---------------------------------------- */
    .scroll {
        width: 20px;
        height: 50px;
        bottom: -10px;
        left: 4%;
    }
    .scroll p {
        font-size: 0.8rem;
    }
    
    /* pickup-news  ---------------------------------------- */
    .pickup-news {
        padding: 0 0 24px;
        align-items: flex-start;
        border-bottom: 1px solid #cccccc;
    }
    .pickup-news .en-ttl {
        width: 70px;
        font-size: 1.2rem;
        padding: 2px 0 0;
    }
    .pickup-news a {
        display: block;
        width: calc(100% - 70px);
        padding: 0 0 4px 20px;
    }
    .date {
        font-size: 1.2rem;
        margin-right: 10px;
        margin-bottom: 2px;
    }
    .cate {
        font-size: 1.1rem;
        padding: 2px 14px 3px;
    }
    .pickup-news .ttl {
        padding: 8px 0 0;
    }
    
    /* t-sec-reason  ---------------------------------------- */
    .t-sec-reason {
        padding: 60px 0 40px;
        background: url("../images/wave_ttl_sp.png") top 150px left no-repeat;
        background-size: 100% auto;
    }
    .t-sec-reason .section-wrap {
        position: relative;
    }
    .t-sec-reason-ttl {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 50px 0 30px;
    }
    .t-sec-reason-ttl .ttl {
        font-size: 2.0rem;
        line-height: 2;
    }
    .t-sec-reason-topfig {
        width: 24%;
        top: 10px;
    }
    .t-sec-reason-fig02 {
        width: 80%;
        left: inherit;
        right: 8px;
        bottom: -200px;
    }
    .t-sec-reason-cont {
        text-align: center;
    }
    .t-sec-reason-cont .txt-wrap {
        margin-bottom: 40px;
    }
    .t-sec-reason-fig03 {
        width: 24%;
        top: 160px;
    }
    .t-sec-reason-fig04 {
        width: 40%;
        position: relative;
        right: -4px;
        bottom: 0;
        margin: 30px 0 0 60%;
    }
    
    /* t-sec-plan  ---------------------------------------- */
    .t-sec-plan {
        padding: 50px 0 60px;
    }
    .plan-list {
        display: block;
    }
    .plan-list .plan-block {
        width: 100%;
        margin-top: 24px;
    }
    .plan-block .plan-block-inner {
        padding: 0 6% 26px;
    }
    .plan-block-ttl {
        margin: 16px 0 10px;
    }
    .plan-block-ttl .ttl {
        font-size: 2.4rem;
    }
    .plan-block-ttl .txt {
        font-size: 1.3rem;
    }
    .plan-block-item {
        margin-bottom: 16px;
    }
    .plan-block-item .item {
        font-size: 1.2rem;
        padding: 1px 0 2px;
    }
    .plan-block-item .item._none {
        opacity: 0.4;
    }
    .plan-block-price {
        padding: 12px 0 16px;
        margin-bottom: 16px;
    }
    .plan-block-price .regular-price {
        font-size: 1.3rem;
        margin-bottom: 10px;
    }
    .plan-block-price .regular-price span {
        font-size: 1.6rem;
    }
    .plan-block-price .member-price {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .plan-block-price .member-price .ttl {
        width: 90px;
        font-size: 1.5rem;
        padding: 14px 0;
    }
    .plan-block-price .member-price-inner {
        margin-left: 18px;
    }
    .plan-block-price .member-price-inner .price-box {
        position: relative;
        line-height: 1;
        color: #ce0f0f;
    }
    .plan-block-price .member-price-inner .price-box .price {
        font-size: 3.0rem;
    }
    .plan-block-price .member-price-inner .price-box .price span {
        font-size: 1.4rem;
        margin-left: 3px;
    }
    .plan-block-price .member-price-inner .price-box .tax {
        font-size: 1.0rem;
        right: -0.6em;
        top: 4px;
    }
    .plan-block-price .member-price-inner .taxin {
        font-size: 1.1rem;
        letter-spacing: 0.04em;
    }
    .plan-block-price .member-price-inner .taxin span {
        font-size: 1.6rem;
    }
    /* plan-list._col3 */
    .t-sec-plan .plan-list._col3 {
        margin-bottom: 0;
    }
    .plan-list._col3 .plan-block {
        width: 100%;
        margin-top: 24px;
    }
    .plan-list._col3 .plan-block .plan-block-inner {
        padding: 0 6% 26px;
    }
    .plan-list._col3 .plan-block-ttl .ttl {
        font-size: 2.4rem;
    }
    .plan-list._col3 .plan-block-item .item {
        font-size: 1.2rem;
    }
    .plan-list._col3 .plan-block-price {
        margin-bottom: 16px;
    }
    .plan-list._col3 .plan-block-price .member-price .ttl {
        width: 90px;
        font-size: 1.5rem;
        padding: 14px 0;
    }
    .plan-list._col3 .plan-block-price .member-price-inner {
        margin-left: 18px;
    }
    .plan-list._col3 .plan-block-price .member-price-inner .price-box .price {
        font-size: 3.0rem;
    }
    .plan-list._col3 .plan-block-price .member-price-inner .price-box .price span {
        font-size: 1.4rem;
    }
    .plan-list._col3 .plan-block-price .member-price-inner .price-box .tax {
        font-size: 1.0rem;
        right: -0.6em;
        top: 4px;
    }
    .plan-list._col3 .plan-block-price .member-price-inner .taxin span {
        font-size: 1.6rem;
    }
    
    /* plan-list._col4 */
    .sec-btm-plan .plan-list._col4 {
        margin: 30px 0 0;
        display: flex;
    }
    .sec-btm-plan .plan-list._col4::before,
    .sec-btm-plan .plan-list._col4::after {
        display: none;
    }
    .sec-btm-plan .plan-list._col4 .plan-block {
        width: 48.5%;
        margin-top: 0;
    }
    .sec-btm-plan .plan-list._col4 .plan-block-inner {
        padding-bottom: 20px;
    }
    .sec-btm-plan .plan-list._col4 .plan-block-ttl {
        margin: 8px 0 0;
    }
    .sec-btm-plan .plan-list._col4 .plan-block-ttl .lead {
        font-size: 1.0rem;
        letter-spacing: 0;
    }
    .sec-btm-plan .plan-list._col4 .plan-block-ttl .ttl {
        font-size: 1.5rem;
        letter-spacing: 0;
        margin-bottom: 1px;
    }
    .sec-btm-plan .plan-list._col4 .plan-block-ttl .txt {
        font-size: 1.0rem;
    }
    
    /* bnr-member  ---------------------------------------- */
    .sec-bnr-member {
        padding: 40px 5.3333%;
    }
    ._pb-none {
        padding-bottom: 0;
    }
    .t-sec-plan .bnr-member {
        margin-top: 50px;
    }
    .bnr-member a {
        flex-wrap: wrap;
        padding: 30px 20px 24px;
        border: 6px solid #ebe9e2;
    }
    .bnr-member .fig {
        width: 100%;
        box-sizing: border-box;
        padding: 22px 40px 0;
    }
    .bnr-member-inner .fig {
        display: block;
    }
    .bnr-member-inner {
        width: 100%;
        text-align: center;
    }
    .bnr-member .lead {
        display: block;
        font-size: 1.6rem;
        padding: 6px 20px 6px 24px;
    }
    .bnr-member .ttl {
        font-size: 2.0rem;
        line-height: 1.4;
        padding: 12px 0 16px;
        margin-bottom: 16px;
    }
    .bnr-member .ttl ._small {
        font-size: 1.8rem;
    }
    .bnr-member .ttl ._numb {
        font-size: 4.0rem;
        margin-top: -8px;
    }
    .bnr-member .txt {
        line-height: 1.8;
        padding-right: 30px;
        text-align: left;
    }
    .bnr-member .txt::before,
    .bnr-member .txt::after {
        width: 24px;
        height: 24px;
    }
    
    /* t-sec-link  ---------------------------------------- */
    .t-sec-link {
        padding: 60px 0 20px;
    }
    .t-sec-link-list .block {
        display: block;
        padding: 48px 0 50px;
    }
    .t-sec-link-list .block .thumb-wrap {
        width: 100%;
    }
    .t-sec-link-list .block .thumb-wrap .thumb {
        width: calc(100% - 72px);
        margin-bottom: 24px;
    }
    .t-sec-link-list .block .thumb-wrap .thumb::after {
        padding-top: 80%;
    }
    .t-sec-link-list .block .thumb-wrap .subttl {
        font-size: 1.6rem;
    }
    .t-sec-link-list .block-inner {
        width: 100%;
    }
    .t-sec-link-list .block-inner .txt {
        margin-top: 10px;
    }
    
    /* t-sec-fig  ---------------------------------------- */
    .t-sec-fig .thumb::after {
        padding-top: 66.6666%;
    }
    
    /* t-sec-news  ---------------------------------------- */
    .t-sec-news {
        margin: 60px 0;
    }
    .sec-news-col2 {
        display: block;
    }
    .sec-news-side {
        width: 100%;
        margin-bottom: 32px;
    }
    .sec-news-inner {
        width: 100%;
    }
    .news-list {
        margin-bottom: 40px;
    }
    .news-item a {
        padding: 20px 0;
    }
    .news-item a .thumb {
        width: 90px;
    }
    .news-item a .thumb::after {
        padding-top: 100%;
    }
    .news-item a .news-item-block {
        width: calc(100% - 110px);
        padding: 0;
    }
    .news-item a .news-item-block .ttl {
        font-size: 1.4rem;
        margin-top: 8px;
    }
    
    
    /*/////////////////////////////////////////////////////////////////////////////


              // REASON //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    
    /* sec-reason  ---------------------------------------- */
    .sec-reason {
        padding: 50px 0 60px;
    }
    .reason-list {
        padding-top: 30px;
    }
    .reason-item {
        display: block;
        margin: 0 0 40px;
    }
    .reason-item .thumb {
        width: 100%;
    }
    .reason-item-inner {
        width: 100%;
        margin: 20px 0 0;
    }
    .reason-item .numb {
        margin-bottom: 0;
    }
    .reason-item .numb::before {
        width: calc(100% - 70px);
    }
    .reason-item .numb p {
        font-size: 1.2rem;
        padding-left: 0;
    }
    .reason-item .numb p span {
        font-size: 2.8rem;
    }
    .reason-item .ttl {
        font-size: 2.1rem;
        margin-bottom: 12px;
    }
    .note {
        font-size: 1.2rem;
    }
    .reason-item-point {
        display: block;
        padding: 12px 20px;
        margin-top: 20px;
    }
    .reason-item-point-ttl {
        width: 100%;
        font-size: 1.1rem;
        text-align: left;
        border-bottom: 1px solid #d9d9d9;
        margin-bottom: 16px;
        padding-bottom: 6px;
    }
    .reason-item-point-inner {
        width: 100%;
        padding: 0;
        border-left: none;
    }
    
    /* box-block  ---------------------------------------- */
    .box-block {
        margin: 40px auto 0;
        border: 6px solid #f5f4f0;
        padding: 30px 24px;
    }
    .box-block .ttl {
        font-size: 2.2rem;
        margin-bottom: 24px;
    }
    .box-block-col2 {
        display: block;
    }
    .box-block-col2 .thumb {
        width: 100%;
    }
    .box-block-col2-inner {
        width: 100%;
        margin: 16px 0 0;
    }
    .box-block-col2-inner .ttl {
        font-size: 2.0rem;
        margin-bottom: 10px;
    }
    
    /* sec-member  ---------------------------------------- */
    .sec-member {
        padding: 60px 0;
    }
    .sec-member-block {
        text-align: center;
        margin: 18px 0 0;
    }
    .sec-member-block .ttl {
        font-size: 1.9rem;
        letter-spacing: 0.04em;
        margin-bottom: 16px;
    }
    .member-benefits {
        width: 100%;
        margin: 40px auto 0;
        padding: 34px 5px;
    }
    .member-benefits-ttl {
        font-size: 1.8rem;
        top: -12px;
        padding: 0 20px;
        white-space: nowrap;
    }
    .member-benefits ul {
        position: relative;
    }
    .member-benefits ul::before {
        height: 100%;
        bottom: -5px;
    }
    .member-benefits ul li {
        width: 50%;
        font-size: 2.0rem;
        line-height: 1.2;
    }
    .member-benefits ul li .small {
        font-size: 1.8rem;
    }
    .member-benefits ul li .large {
        font-size: 2.4rem;
    }
    .member-benefits ul li .numb {
        font-size: 3.2rem;
    }
    .member-benefits-label {
        width: 80px;
        position: absolute;
        right: -15px;
        top: -50px;
    }
    .sec-member-flow {
        margin: 40px auto 32px;
    }
    .sec-member-flow .ttl span {
        font-size: 2.0rem;
        padding: 0 20px;
    }
    .member-flow-list {
        display: block;
        margin-top: 30px;
    }
    .member-flow-item {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        text-align: left;
        padding: 20px 10px;
        margin-bottom: 16px;
    }
    .member-flow-item::after {
        border-left: 12px solid transparent;
        border-top: 16px solid #a28843;
        border-right: 12px solid transparent;
        right: inherit;
        left: 50%;
        top: inherit;
        bottom: -20px;
        transform: translateX(-50%);
        z-index: 1;
    }
    .member-flow-item:last-child::after {
        display: none;
    }
    .member-flow-item .numb {
        width: 70px;
        position: relative;
        left: 0;
        top: 0;
        transform: none;
        font-size: 1.4rem;
        text-align: center;
    }
    .member-flow-item .numb span {
        font-size: 2.4rem;
    }
    .member-flow-item .txt {
        width: calc(100% - 70px);
        border-left: 1px solid #a28843;
        padding-left: 20px;
    }
    
    /* sec-faq  ---------------------------------------- */
    .sec-faq {
        padding: 50px 0;
    }
    .faq-list {
        margin-top: 30px;
    }
    .faq-item {
        margin-bottom: 8px;
    }
    .faq-item .question {
        padding: 18px 16px 18px;
    }
    .faq-item .question .en {
        width: 26px;
        font-size: 1.5rem;
    }
    .faq-item .question .ttl {
        width: calc(100% - 50px);
        font-size: 1.5rem;
        padding-top: 0;
    }
    .faq-item .question .plus {
        width: 28px;
        height: 28px;
        right: 10px;
    }
    .faq-item .question .plus::before,
    .faq-item .question .plus::after {
        width: 12px;
        height: 2px;
        left: 8px;
        top: 13px;
    }
    .faq-item .answer-wrap {
        display: none;
        padding: 0 16px 16px;
    }
    .faq-item .answer {
        padding: 14px 20px 16px;
    }
    
    /* sec-btm-plan  ---------------------------------------- */
    .sec-btm-plan {
        padding: 60px 0 0;
    }
    .sec-btm-plan .plan-list {
        margin-bottom: 30px;
    }
    .sec-btm-plan .plan-list .plan-block {
        margin-top: 24px
    }
    
    /*/////////////////////////////////////////////////////////////////////////////


              // PLAN DETAIL //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    
    /* page-ttl-plan  ---------------------------------------- */
    .page-ttl-plan {
        padding: 0;
    }
    .page-ttl-plan .numb span {
        font-size: 2.0rem;
    }
    .page-ttl-plan .plan-block-item {
        margin: 16px auto 24px;
    }
    .page-ttl-plan .plan-block-price .regular-price span {
        font-size: 1.8rem;
    }
    .page-ttl-plan-note {
        font-size: 1.2rem;
    }
    
    /* sec-plan-pick  ---------------------------------------- */
    .sec-plan-pick {
        padding: 40px 0 0;
        margin-bottom: -5px;
    }
    .sec-plan-pick-block {
        border: 6px solid #f5f4f0;
        padding: 70px 10px 50px;
        margin: -70px auto 0;
    }
    .sec-plan-pick-block::before {
        width: 90%;
    }
    .st-flowers-list {
        padding-top: 10px;
    }
    .st-flowers-list .thumb {
        width: 30%;
        margin: 0 1.5%;
    }
    
    /* sec-plan-include  ---------------------------------------- */
    .sec-plan-include {
        padding: 40px 0 50px;
    }
    .include-list {
        margin-top: 30px;
    }
    .include-item {
        width: 49%;
        padding: 4px;
        margin-bottom: 8px;
    }
    .include-item .txt {
        font-size: 1.3rem;
    }
    .include-item .txt span {
        font-size: 1.0rem;
    }
    .include-note {
        padding: 26px 20px;
        margin-top: 24px;
    }
    .include-note .ttl {
        margin-bottom: 12px;
    }
    .include-note .ttl span {
        padding: 0 20px 0 0;
    }
    .include-note-list {
        display: block;
    }
    .include-note-list li {
        width: 100%;
    }
    .separate-note {
        display: block;
        padding-top: 32px;
        margin-top: 40px;
    }
    .separate-note .ttl {
        width: 100%;
        font-size: 1.8rem;
        margin-bottom: 20px;
    }
    .separate-note-list {
        width: 100%;
        display: block;
    }
    .separate-note-list li {
        width: 100%;
        font-size: 1.4rem;
        padding: 5px 0 15px 24px;
        margin-bottom: 10px;
    }
    
    /* sec-plan-flow  ---------------------------------------- */
    .sec-plan-flow {
        padding: 50px 0 40px;
    }
    .sec-plan-flow .plan-block-item {
        width: 100%;
        margin: 26px auto 40px;
    }
    .sec-plan-flow .plan-block-item .item {
        font-size: 1.2rem;
    }
    .flow-item {
        padding: 10px 10px 20px 0;
        margin-bottom: 16px;
    }
    .flow-item .day {
        width: 80px;
    }
    .flow-item .day::before {
        height: calc(100% + 50px);
    }
    .flow-item .day p {
        padding: 10px;
    }
    .flow-item .day p span {
        width: 60px;
        height: 60px;
        font-size: 1.4rem;
    }
    .flow-item .flow-item-col2 {
        width: calc(100% - 90px);
        display: block;
        padding: 10px 10px 20px 0;
    }
    .flow-item .flow-item-col2::after {
        border-top: 20px solid #a98e47;
        border-right: 24px solid transparent;
        border-left: 24px solid transparent;
        bottom: -28px;
        margin-left: -30px;
    }
    .flow-item .flow-item-col2 .thumb {
        width: 100%;
    }
    .flow-item .flow-item-col2 .thumb::after {
        padding-top: 66.6666%;
    }
    .flow-item .flow-item-cont {
        width: 100%;
        padding-top: 8px;
    }
    .flow-item .flow-item-cont .numb {
        font-size: 1.2rem;
    }
    .flow-item .flow-item-cont .ttl {
        font-size: 1.7rem;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    .flow-item .flow-item-cont .ttl::after {
        width: 100%;
    }
    .flow-item .flow-item-tel {
        margin: 16px 0 0;
    }
    .flow-item .flow-item-tel a {
        background: #773086;
        padding: 0 16px;
    }
    .flow-item .flow-item-tel a p {
        font-size: 1.8rem;
        line-height: 1.2;
        padding: 12px 0 16px 36px;
        background-size: 20px auto;
    }
    .flow-item .flow-item-tel a p span {
        font-size: 1.2rem;
        padding-left: 0;
    }
    .flow-btm {
        padding: 25px 16px;
    }
    .flow-btm .ttl {
        font-size: 1.8rem;
        margin-bottom: 10px;
    }
    
    /*/////////////////////////////////////////////////////////////////////////////


              // HALL //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    .hall-list-wrap {
        padding: 60px 0;
    }
    .sec-hall:last-child .hall-list-wrap {
        padding-bottom: 0;
    }
    .sec-hall .cont-ttl {
        margin-bottom: -12px;
    }
    .hall-item {
        display: block;
        margin-top: 48px;
    }
    .hall-item-fig {
        width: 100%;
    }
    .hall-item-fig-slider_thumb .thumb {
        width: 48px;
        margin: 8px 4px 0 0;
        border-radius: 2px;
    }
    .hall-item-inner {
        width: 100%;
        margin-top: 20px;
    }
    .hall-item-inner .ttl {
        font-size: 2.4rem;
        margin-bottom: 8px;
    }
    .hall-item-inner dl {
        padding: 10px 0 8px;
        margin-top: 24px;
    }
    .hall-item-inner dl dt {
        width: 70px;
        margin-top: 12px;
    }
    .hall-item-inner dl dd {
        width: calc(100% - 80px);
        margin-top: 12px;
    }
    .hall-list-col3 {
        margin-top: 20px;
    }
    .hall-list-col3::after {
        display: none;
    }
    .hall-subitem {
        width: 47.5%;
        margin-top: 32px;
    }
    .hall-subitem-inner {
        margin-top: 12px;
        font-size: 1.3rem;
    }
    .hall-subitem-inner .ttl {
        font-size: 1.6rem;
        margin-bottom: 6px;
    }
    .hall-subitem-inner dl {
        display: block;
    }
    .hall-subitem-inner dl dt {
        width: 100%;
        font-size: 1.2rem;
        margin-top: 8px;
    }
    .hall-subitem-inner dl dd {
        width: 100%;
        font-size: 1.2rem;
        margin-top: 6px;
    }

    /*/////////////////////////////////////////////////////////////////////////////


              // FLOWER //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    .flower-list-wrap {
        padding: 50px 0;
    }
    .flower-list::after {
        display: none;
    }
    .flower-item {
        width: 47%;
        margin: 20px 0 0;
    }
    .flower-item-inner {
        margin-top: 6px;
        text-align: center;
    }
    .flower-item-inner .ttl {
        font-size: 1.4rem;
        margin-bottom: 0;
    }
    .flower-item-inner .price {
        font-size: 1.2rem;
    }
    .flower-item-inner .price span {
        font-size: 1.8rem;
    }
    .offering-list {
        margin-top: 8px;
    }
    .offering-item {
        width: 47%;
        margin: 20px 0 0;
    }
    
    /* fax-block  ---------------------------------------- */
    .fax-block {
        margin: 50px auto 0;
        padding: 32px 20px 40px;
    }
    .fax-block .ttl {
        font-size: 2.2rem;
        margin-bottom: 8px;
    }
    .fax-block .lead {
        font-size: 1.4rem;
        margin-bottom: 10px;
    }
    .fax-block .fax {
        font-size: 1.6rem;
        line-height: 1.3;
    }
    .fax-block .fax span {
        font-size: 3.2rem;
    }
    
    /*/////////////////////////////////////////////////////////////////////////////


              // COMPANY //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    
    /* sec-message  ---------------------------------------- */
    .sec-message {
        padding: 50px 0 60px;
    }
    .sec-message-ttl {
        font-size: 2.0rem;
        margin-top: 28px;
        text-align: center;
    }
    .sec-message-col2 {
        display: block;
        margin-top: 20px;
    }
    .sec-message-fig {
        width: 56%;
        margin: 0 auto 20px;
    }
    .sec-message-fig .name {
        text-align: right;
        margin-top: 6px;
    }
    .sec-message-fig .name span {
        font-size: 1.6rem;
        margin-left: 4px;
    }
    .sec-message-block {
        width: 100%;
    }
    
    /* sec-overview  ---------------------------------------- */
    .sec-overview {
        padding: 60px 0;
    }
    .sec-overview-col2 {
        display: block;
    }
    .sec-overview-col2 .cont-ttl {
        width: 100%;
    }
    .sec-overview-block {
        width: 100%;
        padding: 24px 0 0;
    }
    
    /* sec-access  ---------------------------------------- */
    .sec-access {
        padding: 50px 0 0;
    }
    .access-list {
        margin-top: 30px;
    }
    .access-item {
        display: block;
        margin: 0 0 40px;
    }
    .access-item:last-child {
        margin-bottom: 0;
    }
    .access-item .thumb {
        width: 100%;
    }
    .access-item .thumb::after {
        padding-top: 66.6666%;
    }
    .access-item-block {
        width: 100%;
        border-top: none;
        padding: 20px 0 0;
    }
    .access-item-block .ttl {
        font-size: 2.0rem;
        margin-bottom: 6px;
    }
    .access-item-block .btn {
        margin-top: 16px;
    }
    .access-item-block .btn a {
        width: 240px;
    }
    
    /*/////////////////////////////////////////////////////////////////////////////


              // NEWS //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    
    /* sec-news  ---------------------------------------- */
    .sec-news {
        padding: 40px 0 0;
    }
    .sec-news .sec-news-side {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 28px;
    }
    .cate-list-sp {
        display: block;
        width: 48%;
    }
    .archive-nav {
        width: 48%;
    }
    .sec-news .sec-news-side select {
        font-size: 1.2rem;
        height: 40px;
    }
    
    /* wp-pagenavi  ---------------------------------------- */
    .wp-pagenavi {
        margin: 40px auto 0;
    }
    .wp-pagenavi a {
        width: 42px;
        height: 42px;
        margin: 0 6px 6px 0;
        line-height: 40px;
    }
    .wp-pagenavi span.current {
        width: 42px;
        height: 42px;
        margin: 0 6px 6px 0;
        line-height: 40px;
    }
    .wp-pagenavi span.extend {
        line-height: 40px;
        margin: 0 6px 6px 0;
    }

    /*/////////////////////////////////////////////////////////////////////////////


              // NEWS DETAIL //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    
    /* sec-news-detail  ---------------------------------------- */
    .sec-news-detail {}
    .news-ttl {
        padding-bottom: 30px;
        margin-bottom: 48px;
        border-bottom: 1px solid #cccccc;
    }
    .news-ttl .ttl {
        font-size: 2.2rem;
        padding: 16px 0 0;
    }
    
    /* entry  ---------------------------------------- */
    .entry {
        width: 100%;
    }
    .entry blockquote {
        padding: 24px 20px;
        margin: 1.5em 0;
    }
    .entry ul li {
        padding-left: 1.2em;
    }
    .entry ul li::before {
        width: 8px;
        height: 8px;
        top: 10px;
    }
    .entry p {
        margin: 0.5em 0;
    }
    .entry h2 {
        font-size: 2.2rem;
    }
    .entry h3 {
        font-size: 2.0rem;
        padding-left: 14px;
    }
    .entry h3::before {
        width: 3px;
        height: calc(100% - 20px);
        top: 5px;
    }
    .entry h4 {
        font-size: 1.8rem;
    }
    .entry h5 {
        font-size: 1.6rem;
    }
    
    /* detail-nav  ---------------------------------------- */
    .detail-nav {
        margin: 50px auto 0;
        padding-top: 40px;
    }
    .detail-nav ul {
        width: 100%;
        padding-bottom: 46px;
    }
    .detail-nav ul li.btn-back a {
        border: 1px solid #cccccc;
        padding: 10px 0;
        border-radius: 4px;
}
    .detail-nav ul li.btn-prev a {
        padding-left: 26px;
    }
    .detail-nav ul li.btn-next a {
        padding-right: 26px;
    }
    .detail-nav ul li.btn-prev a::after,
    .detail-nav ul li.btn-next a::after {
        width: 18px;
        height: 18px;
        transform: translateY(-45%);
    }
    .detail-nav ul li.btn-prev a::after {
        transform: translateY(-45%) rotate(180deg);
    }
    
    /*/////////////////////////////////////////////////////////////////////////////


              // CONTACT //
	  

	/////////////////////////////////////////////////////////////////////////////*/
    
    /* sec-contents  ---------------------------------------- */
    .sec-contents {
        padding: 40px 0 0;
    }
    
    /* contact-tel-block  ---------------------------------------- */
    .contact-tel-block {
        width: 100%;
        margin: 0 auto 40px;
        padding: 30px 20px 35px;
    }
    .contact-tel-block .ttl {
        font-size: 1.6rem;
        margin-bottom: 2px;
    }
    .contact-tel-block .tel a {
        font-size: 3.0rem;
        padding: 2px 0 6px 40px;
    }
    .contact-tel-block .txt {
        font-size: 1.3rem;
    }
    
    /* contact-block  ---------------------------------------- */
    .contact-block dl {
        padding: 15px 0 20px;
    }
    .contact-block dl:after {
        height: 0;
        visibility: hidden;
        content: ".";
        display: block;
        clear: both;
    }
    .contact-block dl dt {
        display: inline-block;
        width: auto;
        float: none;
        padding: 16px 50px 16px 0;
    }
    .contact-block dl dt .any,
    .contact-block dl dt .required {
        width: 40px;
        line-height: 19px;
        font-size: 1.0rem;
    }
    .contact-block dl dd {
        margin: 0;
    }
    
    /* input  ---------------------------------------- */
    input[type="text"],
    input[type="number"],
    input[type="password"],
    input[type="email"] {
        padding: 10px;
        margin: 5px 0;
        height: 50px;
        font-size: 1.4rem;
    }
    select {
        margin: 5px 0;
        width: 100%;
        height: 50px;
        padding: 0 10px;
        font-size: 1.4rem;
    }
    textarea {
        width: 100%;
        height: 160px;
        padding: 10px;
        font-size: 1.4rem;
        margin: 5px 0;
    }
    
    /* radio, checkbox  ---------------------------------------- */
    .radio_text,
    .checkbox_text {
        padding: 5px 0;
        font-size: 1.4rem;
    }
    .wpcf7-radio,
    .wpcf7-checkbox {
        display: block;
    }
    
    /* form-btn  ---------------------------------------- */
    .form-btn {
        padding-top: 20px;
        font-size: 1.4rem;
        text-align: center;
    }
    .form-btn ul {
        justify-content: center;
        padding-top: 16px;
    }
    .form-btn ul li {
        width: 90%;
        margin: 10px auto;
    }
    input[type="submit"],
    input[type="reset"],
    input[type="button"],
    button[type="submit"] {
        width: 100%;
        height: 60px;
        margin: 0 auto 10px;
        font-size: 1.5rem;
    }
    button[type="submit"] {
        margin: 20px auto 0;
    }
    
    /* wpcf7-turnstile  ---------------------------------------- */
    .wpcf7-turnstile {
        margin-top: 10px;
    }
    /* complete-display  ---------------------------------------- */
    .complete-display {
        padding: 32px 20px 40px;
    }
    .complete_ttl {
        font-size: 2.4rem;
    }
    .complete-display .btn {
        margin-top: 24px;
    }
    
}