/*
Theme Name: radiban
Theme URI: https://radiban.jp/
Description: This theme is created for radiban only.
Version: 1.0
Author: radiban
Tags: one columns, widgets
*/

@charset "utf-8";

/* Preferences
----------------------------------------------------------- */
* {
    margin: 0;
    padding: 0;
}
*, ::before, ::after {
    box-sizing: inherit;
}
html{
    box-sizing: border-box;
}

/* html5 reset css */
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, a, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, dialog, figure, footer, header,hgroup, menu, nav, section,time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; background: transparent; } article, aside, dialog, figure, footer, header,hgroup, nav, section {display:block;} nav ul {list-style:none;} blockquote, q {quotes:none;} blockquote:before, blockquote:after,q:before, q:after { content:''; content:none; } ins { background-color:#ff9; color:#000; text-decoration:none; } mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; } del {text-decoration: line-through;} abbr[title], dfn[title] { border-bottom:1px dotted #000; cursor:help; } hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; } input, select {vertical-align:middle;} 
/* //html5 reset css */

body {
    font-size: 16px;
    line-height: 1.448;
    font-weight: 400;
    position: relative;
    word-break: break-word;
    color: #573930;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Verdana,"ＭＳ Ｐゴシック","MS PGothic",'小塚ゴシック Pro','Kozuka Gothic Pro',sans-serif;
}

@media screen and (max-width: 1120px) {
    body {
        width: 1120px;
    }
}

@media screen and (max-width: 767px) {
    body {
        width: auto;
        font-size: 14px;
        position: relative;
    }
}

ul{list-style-type: none;}
ul.circle{list-style-type: circle;margin-left:1.5em;}
ul.disc{list-style-type: disc;margin-left:1.5em;}
ul,ol{margin-left:1.5em;margin-bottom:1em;}

h1,h2,h3,h4,h5,h6{
    font-size: 100%;
    font-weight: 600;
}
p{margin-bottom: 1em;}
em,address{
    font-weight: normal;
    font-style: normal;
}
table{
    border-collapse: collapse;
    width: 100%;
}
th,td{
    padding: 1.5em 0;
    border-bottom: 1px dotted #573930;
    font-weight: bold;
    vertical-align: top;
    box-sizing: border-box;
}
img{
    max-width: 100%;
    height: auto;
    border: 0;
    vertical-align: middle;
}
/*a img{
    transition: all .5s;
}
a img:hover{
    opacity: 0.6;
}*/

@media screen and (max-width: 767px) {
    img{
        width: 100%;
        height: auto;
    }
}
blockquote{
    margin: 0 0 1em;
    padding: 1em;
    background: rgba(255,255,255,0.1);
}
blockquote p{margin: 0;}

a{
    text-decoration: none;
    color: #ceb4d6;
    outline: none;
    transition: all .5s;
}

@media screen and (max-width: 767px) {
    th{width: 30%;}
    td{width: 70%;}
}

/* public css
----------------------------------------------------------------*/
.clear{clear: both;}
.cf:after {visibility: hidden;display: block;font-size: 0;content: " ";clear: both;height: 0;overflow: hidden;}
* html .cf{ zoom: 1; } /* ie6 */
*:first-child+html .cf { zoom: 1; } /* ie7 */

.alignleft{float: left; margin-right: 2.5rem;}
.alignright{float: right; margin-left: 2.5rem;}
.aligncenter{text-align: center; display: block; margin-left: auto; margin-right: auto; }
@media screen and (max-width: 767px) {
    .alignleft{
        float: none;
        margin-right: 0;
    }
    .alignright{
        float: none;
        margin-left: 0;
    }
}
.center{text-align: center;}
.left{text-align: left;}
.right{text-align: right;}
.red{color: #ff0000;}
.green{color: #39b54a;}
.bold{font-weight: bold;}
.small{font-size: 85%;}

.fright{float: right;}
.fleft{float: left;}
@media screen and (max-width: 767px) {
    .fright,.fleft{float: none;}
}

/*space*/
.mt0{margin-top: 0;}.mt5{margin-top: 5px;}.mt10{margin-top: 10px;}.mt15{margin-top: 15px;}.mt20{margin-top: 20px;}.mt25{margin-top: 25px;}.mt30{margin-top: 30px;}.mt35{margin-top: 35px;}.mt40{margin-top: 40px;}.mt45{margin-top: 45px;}.mt50{margin-top: 50px;}.mt100{margin-top: 100px;}
.mr0{margin-right: 0;}.mr5{margin-right: 5px;}.mr10{margin-right: 10px;}.mr15{margin-right: 15px;}.mr20{margin-right: 20px;}.mr25{margin-right: 25px;}.mr30{margin-right: 30px;}.mr35{margin-right: 35px;}.mr40{margin-right: 40px;}.mr45{margin-right: 45px;}.mr50{margin-right: 50px;}.mr100{margin-right: 100px;}
.mb0{margin-bottom: 0;}.mb5{margin-bottom: 5px;}.mb10{margin-bottom: 10px;}.mb15{margin-bottom: 15px;}.mb20{margin-bottom: 20px;}.mb25{margin-bottom: 25px;}.mb30{margin-bottom: 30px;}.mb35{margin-bottom: 35px;}.mb40{margin-bottom: 40px;}.mb45{margin-bottom: 45px;}.mb50{margin-bottom: 50px;}.mb100{margin-bottom: 100px;}.ml0{margin-left: 0;}
.ml5{margin-left: 5px;}.ml10{margin-left: 10px;}.ml15{margin-left: 15px;}.ml20{margin-left: 20px;}.ml25{margin-left: 25px;}.ml30{margin-left: 30px;}.ml35{margin-left: 35px;}.ml40{margin-left: 40px;}.ml45{margin-left: 45px;}.ml50{margin-left: 50px;}.ml100{margin-left: 100px;}.pt0{padding-top: 0;}
.pt5{padding-top: 5px;}.pt10{padding-top: 10px;}.pt15{padding-top: 15px;}.pt20{padding-top: 20px;}.pt25{padding-top: 25px;}.pt30{padding-top: 30px;}.pt35{padding-top: 35px;}.pt40{padding-top: 40px;}.pt45{padding-top: 45px;}.pt50{padding-top: 50px;}.pt100{padding-top: 100px;}
.pr0{padding-right: 0;}.pr5{padding-right: 5px;}.pr10{padding-right: 10px;}.pr15{padding-right: 15px;}.pr20{padding-right: 20px;}.pr25{padding-right: 25px;}.pr30{padding-right: 30px;}.pr35{padding-right: 35px;}.pr40{padding-right: 40px;}.pr45{padding-right: 45px;}.pr50{padding-right: 50px;}.pr100{padding-right: 100px;}
.pb0{padding-bottom: 0;}.pb5{padding-bottom: 5px;}.pb10{padding-bottom: 10px;}.pb15{padding-bottom: 15px;}.pb20{padding-bottom: 20px;}.pb25{padding-bottom: 25px;}.pb30{padding-bottom: 30px;}.pb35{padding-bottom: 35px;}.pb40{padding-bottom: 40px;}.pb45{padding-bottom: 45px;}.pb50{padding-bottom: 50px;}.pb100{padding-bottom: 100px;}.pl0{padding-left: 0;}
.pl5{padding-left: 5px;}.pl10{padding-left: 10px;}.pl15{padding-left: 15px;}.pl20{padding-left: 20px;}.pl25{padding-left: 25px;}.pl30{padding-left: 30px;}.pl35{padding-left: 35px;}.pl40{padding-left: 40px;}.pl45{padding-left: 45px;}.pl50{padding-left: 50px;}.pl100{padding-left: 100px;}
.mb05e{margin-bottom: 0.5em;}.mb1e{margin-bottom: 1em;}.mb2e{margin-bottom: 2em;}.mb3e{margin-bottom: 3em;}.mb4e{margin-bottom: 4em;}.mb5e{margin-bottom: 5em;}

.sh{
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
}
.img-wrap {
    width: 100%;
    height: 0;
    position: relative;
}
.img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
}

.font-en{
    font-family: "Roboto", sans-serif;
    font-weight: 500;
}
.font-jp{
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
}

/*bg_color*/
.bg_color,.hover_bg_color a:hover{background-color: #f4fbfc;}
/* 
色
グレー：#f9f9f9
イエロー：#fffcf7
スカイブルー：#f4fbfc
ブルー：#f7fbff
エメラルドグリーン：#f4fff9
ピンク：#fff9fe
赤：#fff7f7
*/


/* animation
----------------------------------------------------------------*/
@keyframes fadeIn{
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}

@keyframes fadeOut{
    0%{
        opacity: 1;
    }
    100%{
        opacity: 0;
    }
}

/* rayout
----------------------------------------------------------------*/
.section-wrap{
    padding: 80px 0;
}
.section-wrap.bg-color{
    background-color: #fff4ea;
}
.section-wrap.page-wrap{
    padding-top: 0;
}
.contents-inner{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}
.contents-inner-sm{
    width: 100%;
    max-width: 734px;
    margin: 0 auto;
}
.contents-inner-md{
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}
.contents-inner-la{
    width: 100%;
    padding: 0 40px;
}
.contents-inner-max{
    width: 100%;
}

.section-head{
    color: #8ed7df;
    text-align: center;
}
.section-head-en{
    font-size: 32px;
    line-height: 1.1718;
    letter-spacing: 0.05em;
}
.section-head-title{
    font-size: 16px;
    letter-spacing: 0.05em;
}

.section-body{
    margin-top: 40px;
}

.sub-section-wrap{
    margin-top: 60px;
}
.sub-section-title{
    font-size: 24px;
    color: #8ed7df;
    letter-spacing: 0.1em;
}
.sub-section-body{
    margin-top: 20px;
}

/*.section-column{
    display: flex;
    justify-content: space-between;
}
.section-column.ac{
    align-items: center;
}
.section-column.re{
    flex-direction: row-reverse;
}
.section-column-child{
    width: calc(50% - 25px);
}
.section-body-text{
    font-size: 16px;
    line-height: 2.1;
}
.section-body-text p{
    margin-bottom: 1.5em;
}
.section-body-text :last-child{
    margin-bottom: 0;
}
.section-body-form{
    font-size: 16px;
    line-height: 2.1;
    margin-top: 50px;
}

.sub-section-wrap{
    margin-top: 60px;
}
.sub-section-title{
    font-size: 24px;
    letter-spacing: 0.1em;
}
.sub-section-body{
    padding-top: 20px;
}*/

.btn{
    display: block;
    width: 100%;
    height: 40px;
    line-height: 40px;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    background-color: #8ed7df;
    border-radius: 9999px;
}
.btn:hover{
    background-color: #ceb4d6;
}

.search-category{
    display: flex;
    margin: 0 -1rem;
}
.search-category-box{
    width: 50%;
    padding: 0 1rem;
}
.search-category-title{
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
    color: #fff;
    background-color: #8ed7df;
    padding: 0.9rem;
}
.search-category-list{
    display: flex;
    flex-wrap: wrap;
    margin: 2rem -1rem 0;
}
.search-category-list li{
    width: 50%;
    padding: 0 1rem;
    margin-top: 2rem;
}
.search-category-list li:nth-child(-n+2){
    margin-top: 0;
}
.search-category-list li a{
    display: block;
    position: relative;
    transition: all .5s;
}
.search-category-list li a:hover{
    opacity: 0.75;
}
.search-category-image{
    padding-top: 71.59%;
}
.search-category-name-wrap{
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 0 1rem 0.6rem;
}
.search-category-name{
    font-size: 18px;
    font-weight: 800;
    color: #fff;
    width: calc(100% - 32px);
}
.search-category-name-arrow{
    width: 32px;
}
.search-category-btn{
    margin-top: 2rem;
}
.search-category-btn a{
    width: 70%;
    margin: 0 auto;
    background-color: #ceb4d6;
}
.search-category-btn a:hover{
    background-color: #8ed7df;
}

.tags-wrap{margin-top: -1rem;}
.tags-list{
    margin: 0;
    text-align: center;
}
.tags-list li{
    display: inline-block;
    padding: 1rem 0.5rem 0;
}
.tags-list li .tags-link{
    display: block;
    font-size: 16px;
    font-weight: 500;
    height: 30px;
    line-height: 26px;
    padding: 0 1rem;
    border: 2px solid #ceb4d6;
    border-radius: 9999px;
}
.tags-list li .tags-link:hover{
    color: #fff;
    background-color: #ceb4d6;
}

.br-sp{display: none;}

@media screen and (max-width: 767px) {
    .section-wrap{padding: 2rem 0;}
    .contents-inner{padding: 0 2rem;}
    .contents-inner-sm{padding: 0 2rem;}
    .contents-inner-la{padding: 0 2rem;}
    
    .section-head-en{font-size: 20px;}
    .section-head-title{font-size: 12px;}
    
    .section-body{margin-top: 1.5rem;}

    .sub-section-wrap{margin-top: 2rem;}
    .sub-section-title{font-size: 18px;}
    .sub-section-body{margin-top: 1rem;}

    .btn{
        width: 80%;
        font-size: 14px;
        margin: 0 auto;
    }
    
    .search-category{
        display: block;
        margin: 0;
    }
    .search-category-box{
        width: auto;
        padding: 0;
    }
    .search-category-box:last-child{margin-top: 2rem;}
    .search-category-title{font-size: 16px;}
    .search-category-list{margin: 1rem -0.5rem 0;}
    .search-category-list li{
        padding: 0 0.5rem;
        margin-top: 1rem;
    }
    .search-category-name-wrap{
        padding: 0 0.5rem 0.5rem;
    }
    .search-category-name{
        font-size: 10px;
        font-weight: 700;
        width: calc(100% - 18px);
    }
    .search-category-name-arrow{width: 18px;}
    .search-category-btn{margin-top: 1rem;}
    .search-category-btn a{width: 80%;}
    
    .tags-wrap{margin-top: -0.5rem;}
    .tags-list{margin: 0 -0.25rem;}
    .tags-list li{
        display: inline-block;
        padding: 0.5rem 0.25rem 0;
    }
    .tags-list li .tags-link{
        font-size: 10px;
        height: 22px;
        line-height: 20px;
        border: 1px solid #ceb4d6;
    }

    .br-pc{display: none;}
    .br-sp{display: inline-block;}
}

/* header
----------------------------------------------------------------*/
#header{
    padding: 0;
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #8ed7df;
}

.header-inner{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header-inner-left{
    display: flex;
    align-items: center;
}
.logo{
    padding-left: 1rem;
}
.logo img{
    width: auto;
    height: 72px;
}

.header-inner-right{
    display: flex;
    align-items: center;
}
#pc_gm{
    margin: 0;
    display: flex;
}
#pc_gm li{
    padding: 0 1.5rem;
}
#pc_gm li a{
    font-size: 20px;
    color: #573930;
    display:flex;
    align-items: center;
}
#pc_gm li a img{
    width: 20px;
    height: auto;
    margin-right: 5px;
}

#header-contact-btn a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 160px;
    height: 100px;
    text-align: center;
    color: #fff;
    background-color: #8ed7df;
}
#header-contact-btn a span{
    font-size: 12px;
}
#header-contact-btn a p{
    font-size: 20px;
    margin-bottom: 0;
}


#sp-nav-button{display: none;}
#sp-nav{display: none;}

@media screen and (max-width: 767px) {
    #header{
        padding: 0.5rem 1rem;
    }
    .logo{padding-left: 0;}
    .logo img{
        width: 225px;
        height: auto;
    }

    #nav{display: none;}
    #header-contact-btn{display: none;}

    #sp-nav-button{
        display: block;
        width: 28px;
        height: 20px;
        position: relative;
    }
    #sp-nav-button.active{
        /*position: fixed;*/
        z-index: 12;
    }
    #sp-nav-button span{
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #8ed7df;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
    }
    #sp-nav-button span:nth-of-type(1){top: 0;}
    #sp-nav-button.active span:nth-of-type(1){
        -webkit-transform: translateY(9px) rotate(-45deg);
        transform: translateY(9px) rotate(-45deg);
    }
    #sp-nav-button span:nth-of-type(2){
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
    #sp-nav-button.active span:nth-of-type(2){opacity: 0;}
    #sp-nav-button span:nth-of-type(3){bottom: 0;}
    #sp-nav-button.active span:nth-of-type(3){
        -webkit-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg);
    }
    #sp-nav{
        position: fixed;
        left: 0;
        top: 0;
        z-index: 11;
        /* background-color: rgba(0, 0, 0, 0.8);*/
        background-color: #8ed7df;
        width: 100%;
        height: 100%;
        padding: 70px 1rem 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
    #sp-nav.open{
        display: block;
        animation-name: fadeIn;
        animation-duration: 0.4s;
        animation-timing-function: linear;
        animation-fill-mode: forwards;
    }
    #sp-nav.close{
        animation-name: fadeOut;
        animation-duration: 0.4s;
        animation-timing-function: linear;
        animation-fill-mode: forwards;
    }
    #sp-nav.open #sp-gm{
        height: auto;
        margin: 0;
    }
    #sp-nav.open #sp-gm > li{
        width: 100%;
        height: auto;
        float: none;
        font-weight: normal;
        margin-right: 0;
        border-bottom: 1px solid #fff;
        box-sizing: border-box;
    }
    #sp-nav.open #sp-gm > li > a{
        display: block;
        font-size: 13px;
        text-align: left;
        color: #fff;
        padding: 1rem;
        border: none !important;
        box-sizing: border-box;
    }
    header #sp-nav-button.active span{background-color: #fff;}

}

/* breadcrumb
----------------------------------------------------------------*/
.breadcrumb{
    font-size: 14px;
    padding: 2rem 0;
}
.breadcrumb.end{
    padding: 0 0 2rem;
}
.breadcrumbs{
    margin: 0;
}
.breadcrumbs li {
    display: inline-block;
    margin: 0 0.25em;
}
.breadcrumbs li:first-child {
    margin: 0 0.25em 0 0;
}
.breadcrumbs li a {
}

@media screen and (max-width: 767px) {
    .breadcrumb{
        font-size: 12px;
    }
    .breadcrumb.first{
        padding: 1rem 0 2rem;
    }
    .breadcrumb.end{
        padding: 0 0 1rem;
    }
}

/* contents
----------------------------------------------------------------*/
i.fa{
	font-family:FontAwesome !important;
	margin-left: 0.4em;
}

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

/* side
----------------------------------------------------------------*/

/* footer
----------------------------------------------------------------*/
.footer-cta{
    position: relative;
    z-index: 2;
}
.footer-cta-wrap{
    padding: 120px 1rem;
    color: #fff;
    text-align: center;
    background-image: url(img/footer-cta-bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.footer-cta-wrap::before{
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(142, 215, 223, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.footer-cta-contents{
    position: relative;
    z-index: 2;
}
.cta-title{
    font-size: 32px;
    font-weight: 500;
}
.cta-btn{margin-top: 1rem;}
.cta-btn a{
    display: block;
    width: 100%;
    max-width: 536px;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-align: center;
    color: #573930;
    background-color: #fff;
    padding: 20px;
    margin: 0 auto;
}
.cta-description{
    font-size: 20px;
    font-weight: 500;
    margin-top: 1rem;
}


.footer-main{
    color: #fff;
    background-color: #8ed7df;
    padding: 200px 0 0;
    margin-top: -120px;
    position: relative;
}
.footer-main a{
    color: #fff;
}

.footer-main #footer-menu{
    text-align: center;
    margin: 0;
    font-size: 16px;
    font-weight: 700;
}
.footer-main #footer-menu li{
    display: inline-block;
    padding: 0 2rem;
    border-left: 1px solid #fff;
}
.footer-main #footer-menu li:first-child{
    border-left: none;
}

#footer-search{
    width: 100%;
    max-width: 480px;
    margin: 2.2rem auto 0;
}
#footer-search .searchform{
    background-color: #fff;
    border-color: #8ed7df;
}
#footer-search .searchform #search-input::placeholder{
    color: #8ed7df;
}
#footer-search .searchform button[type="submit"]{
    background-image: url(img/icon-search-b.png);
}

.footer-about{
    display: flex;
    justify-content: space-between;
    padding: 80px 0 1rem;
}
.footer-about-profile{
    width: 160px;
}
.footer-about-profile-number{
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    margin-top: 1rem;
}
.footer-about-profile-number span{
    font-size: 12px;
}
.footer-about-profile-sns{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 1rem;
}
.footer-about-profile-sns .sns-title{
    font-size: 16px;
    font-weight: 700;
}
.footer-about-profile-sns .sns-icon{
    display: flex;
    margin: 0 -5px;
}
.footer-about-profile-sns .sns-icon li{
    padding: 0 5px;
}
.footer-about-profile-sns .sns-icon li a{
    display: block;
    width: 32px;
}

.footer-about-category .category-title{
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.1em;
}
.footer-about-category .category-wrap{
    display: flex;
    margin-top: 1.5rem;
}
.footer-about-category .category-item{
    width: 300px;
}
.footer-about-category .category-child-title{
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.1em;
}
.category-child-list{
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    margin: 0;
}
.category-child-list li{
    width: 50%;
    padding-right: 1rem;
    margin-top: 1rem;
}
.category-child-list li a{
    color: #fff4ea;
    font-size: 14px;
    font-weight: 700;
}
.footer-about-category a:hover{text-decoration: underline;}


.footer-about-banner{width: 160px;}
.footer-about-banner-list{margin: 0;}
.footer-about-banner-list li{margin-top: 1rem;}
.footer-about-banner-list li:first-child{margin-top: 0;}

.footer-bottom{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2rem 0;
    border-top: 1px solid #fff;
}
#footer-bottom-menu ul{
    font-size: 14px;
    margin: 0;
}
#footer-bottom-menu ul li{
    display: inline;
    padding-left: 2rem;
}
#footer-bottom-menu ul li:first-child{
    padding-left: 0;
}
#footer-bottom-menu ul li a{
    font-weight: 700;
    letter-spacing: 0.1em;
}
.footer-bottom #copy{
    font-size: 12px;
    font-weight: 300;
    letter-spacing: 0.1em;
    color: #573930;
}

.footer-back-btn{
    position: absolute;
    top: -32px;
    right: 2rem;
}
.footer-back-btn .back{
    display: block;
    width: 64px;
    height: 64px;
    text-indent: -9999px;
    background-image: url(img/btn-back.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    z-index: 3;
}

@media screen and (max-width: 767px) {
    .footer-cta .contents-inner{padding: 0;}
    .footer-cta-wrap{padding: 2rem;}
    .cta-title{
        font-size: 14px;
    }
    .cta-btn{margin-top: 1rem;}
    .cta-btn a{
        font-size: 20px;
        padding: 12px;
    }
    .cta-description{font-size: 12px;}

    .footer-main{
        padding: 2rem;
        margin-top: 0;
    }
    .footer-main .contents-inner{padding: 0;}
    .footer-main #footer-menu{
        text-align: left;
        font-size: 14px;
    }
    .footer-main #footer-menu li{
        display: block;
        padding: 1rem 0.5rem;
        border-left: none;
        border-bottom: 1px dotted #fff;
    }
    .footer-main #footer-menu li:first-child{padding-top: 0;}
    
    #footer-search{margin: 2rem auto 0;}
    
    .footer-about{
        display: block;
        padding: 2rem 0;
    }
    .footer-about-profile{width: auto;}
    .footer-about-profile-logo{
        width: 160px;
        margin: 0 auto;
    }
    .footer-about-profile-number{font-size: 12px;}
    .footer-about-profile-number span{font-size: 10px;}
    .footer-about-profile-sns{
        display: block;
        text-align: center;
        margin-top: 2rem;
    }
    .footer-about-profile-sns .sns-icon{
        justify-content: center;
        margin: 1rem -0.5rem 0;
    }
    .footer-about-profile-sns .sns-icon li{padding: 0 0.5rem;}
    .footer-about-category,
    .footer-about-banner{display: none;}
    
    .footer-bottom{
        display: block;
        padding: 2rem 0 0;
    }
    #footer-bottom-menu ul li{
        display: block;
        text-align: center;
        padding-left: 0;
        padding-top: 1rem;
    }
    #footer-bottom-menu ul li:first-child{padding-top: 0;}
    .footer-bottom #copy{
        font-size: 10px;
        text-align: center;
        margin-top: 2rem;
    }
    
    .footer-back-btn{top: -16px;}
    .footer-back-btn .back{
        width: 32px;
        height: 32px;
    }
}

/* category
----------------------------------------------------------------*/
.news-list{margin: 0;}
.news-list li{
    display: flex;
    font-weight: 400;
    margin-bottom: 1rem;
}
#category-page.news-list li{
    padding-bottom: 1rem;
    border-bottom: 1px dotted #573930;
}
.news-list li:last-child{margin-bottom: 0;}
.news-list li .news-list-day{
    width: 100px;
    font-size: 14px;
    line-height: 23px;
}
.news-list li .news-list-title{
    width: calc(100% - 100px);
}
.news-list li .news-list-title a{
    display: inline-block;
    font-size: 16px;
    color: #573930;
    line-height: 23px;
}
.news-list li .news-list-title a:hover{
    color: #ceb4d6;
}

@media screen and (max-width: 767px) {
    .news-list li{
        display: block;
        padding-bottom: 0.5rem;
        border-bottom: 1px dotted #573930;
        margin-bottom: 0.5rem;
    }
    .news-list li .news-list-day{
        width: auto;
        font-size: 12px;
        line-height: 17px;
    }
    .news-list li .news-list-title{width: auto;}
    .news-list li .news-list-title a{
        display: inline;
        font-size: 14px;
        line-height: 20px;
    }
}

/* taxonomy */
.tax-head{text-align: center;}
.tax-head-title{
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    padding: 0.25rem 2rem;
    background-color: #8ed7df;
    border-radius: 9999px;
    margin-bottom: 0;
}
.tax-body{margin-top: 40px;}

@media screen and (max-width: 767px) {
    .tax-head-title{
        font-size: 12px;
        padding: 0.25em 2em;
    }
    .tax-body{margin-top: 1.5rem;}
}

/* pet-list */
.pet-list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.75rem;
}
.pet-list li{
    width: calc(100% / 3);
    padding: 0 0.75rem;
    margin-top: 2rem;
}
.pet-list li:nth-child(-n+3){
    margin-top: 0;
}
.pet-list li a{
    display: block;
    color: #573930;
    transition: all .5s;
}
.pet-list li a:hover{
    opacity: 0.75;
}
.pet-list-image{
    padding-top: 100%;
    margin-bottom: 0.5rem;
}
.pet-list-contents{
    position: relative;
    padding-right: 5rem;
}
.pet-list-name{
    font-size: 20px;
}
.pet-list-gender{
    position: absolute;
    right: 0;
    top: 0;
}
.pet-list-gender img{
    width: 32px;
    height: auto;
}
.pet-list-price{
    font-size: 16px;
    margin-top: 0.5rem;
}
.pet-list-price .font-en{
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
}
.pet-list-exp{
    margin-top: 0.5rem;
    font-size: 16px;
}
.pet-list-birthday{
    font-size: 16px;
}
.pet-list-view{
    width: 64px;
    height: 26px;
    line-height: 26px;
    font-size: 14px;
    font-weight: 400;
    position: absolute;
    right: 0;
    bottom: 0;
}

@media screen and (max-width: 767px) {
    .pet-list{margin: 0 -0.5rem;}
    .pet-list li{
        width: calc(100% / 2);
        padding: 0 0.5rem;
        margin-top: 1.5rem;
    }
    .pet-list li:nth-child(-n+3){margin-top: 1.5rem;}
    .pet-list li:nth-child(-n+2){margin-top: 0;}
    .pet-list-contents{padding-right: 0;}
    .pet-list-name{font-size: 14px;}
    .pet-list-price{
        font-size: 14px;
        margin-top: 0;
    }
    .pet-list-price .font-en{font-size: 20px;}
    .pet-list-gender,
    .pet-list-exp,
    .pet-list-birthday,
    .pet-list-view{display: none;}
}

/* search
----------------------------------------------------------------*/
/* searchform */
.searchform{
    position: relative;
    border: 1px solid #573930;
    display: block;
    padding: 5px 10px;
    border-radius: 9999px;
    height: 38px;
    width: 100%;
    overflow: hidden;
}
.searchform input[type="text"]{
    border: none;
    color: #573930;
    font-size: 18px;
    font-weight: 500;
    height: 26px;
    line-height: 26px;
    padding-left: 80px;
}
.searchform #search-input::placeholder{
    color: #573930;
    font-weight: 500;
    opacity: 1;
}
.searchform input[type="text"]:focus {
    outline: 0;
}
.searchform #search-input:focus::placeholder{
    opacity: 0;
}
.searchform button[type="submit"]{
    cursor: pointer;
    background-image: url(img/icon-search.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 20px;
    background-color: transparent;
    border: none;
    width: 80px;
    height: 36px;
    position: absolute;
    left: 1px;
    top: 50%;
    transform: translateY(-50%);
    outline : none;
}

@media screen and (max-width: 767px) {
    .searchform input[type="text"]{
        font-size: 14px;
        padding-left: 50px;
    }
    .searchform button[type="submit"]{width: 60px;}
}

/* post
----------------------------------------------------------------*/
.post-head{
}
.post-head-category{
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    padding: 0.25rem 2rem;
    background-color: #8ed7df;
    border-radius: 9999px;
    margin-bottom: 0;
}
.post-head-data{
    font-size: 14px;
    margin: 0;
}
.post-head-title{
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-top: 0.7rem;
}

.post-body{margin-top: 40px;}
.entry{
}
.entry > :last-child{
    margin-bottom: 0;
}
.entry h2{
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 1rem;
}
.entry h3{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 1rem;
}
.entry a{text-decoration: underline;}
.entry ul{list-style-type: disc;margin-left:1.5em;}
.entry img{max-width: 100%; height: auto;}

@media screen and (max-width: 767px) {
    .post-head-category{
        font-size: 12px;
        padding: 0.25em 2em;
    }
    .post-head-title{
        font-size: 20px;
        margin-top: 0.5em;
    }
    .post-body{margin-top: 1.5rem;}
}

/* pet */
#post-pet-visual{
    padding-top: 0;
    margin-top: 40px;
}
.pet-image-wrap .img-wrap,
.pet-image-wrap-single .img-wrap{
    padding-top: 75%;
}
#post-pet-visual .post-pet-tag{
    margin-top: 1rem;
}
#post-pet-visual .post-pet-tag .tags-list{
    text-align: left;
}
#post-pet-visual .post-pet-tag .tags-list li{
    padding: 1rem 1rem 0 0;
}
#post-pet-visual .post-pet-price{
    font-size: 16px;
    margin-top: 1rem;
}
#post-pet-visual .post-pet-price span{
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
}

#post-pet-exp{
    background-color: #fff4ea;
}
.post-pet-exp-wrap{
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
}

.pet-profile-table{margin-top: -1.5rem;}
.pet-profile-table th,
.pet-profile-table td{
    text-align: left;
    padding: 1.5rem 0 0.7rem;
    vertical-align: bottom;
    border-bottom: 1px dotted #ceb4d6;
}
.pet-profile-table th{
    font-size: 18px;
    font-weight: 500;
    width: 30%;
    padding-left: 2rem;
}
.pet-profile-table td{
    font-size: 16px;
    font-weight: 400;
    width: 70%;
    padding-right: 2rem;
}

.pet-contact-btn{margin-top: 40px;}
.pet-contact-btn ul{
    display: flex;
    margin: 0;
}
.pet-contact-btn ul li{
    width: 50%;
}
.pet-contact-btn ul li a{
    display: flex;
    justify-content: center;
    align-items:center;
    width: 90%;
    margin: 0 auto;
}
.pet-contact-btn ul li a#line-btn{
    background-color: #8edf91;
}
.pet-contact-btn ul li a#mail-btn{
    background-color: #ceb4d6;
}
.pet-contact-btn ul li a img{
    width: 24px;
    margin-right: 0.5rem;
}

#post-pet-other{padding-top: 0;}
#post-pet-other .section-head{text-align: left;}

.other-category-list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
}
.other-category-list li{
    width: 25%;
    padding: 0 1rem;
}
.other-category-list li a{
    display: block;
    position: relative;
    transition: all .5s;
}
.other-category-list li a:hover{
    opacity: 0.75;
}
.other-category-image{
    padding-top: 71.59%;
}
.other-category-name-wrap{
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 0 1rem 0.6rem;
}
.other-category-name{
    font-size: 18px;
    font-weight: 800;
    color: #fff;
    width: calc(100% - 32px);
}
.other-category-name-arrow{
    width: 32px;
}

@media screen and (max-width: 767px) {
    #post-pet-visual{margin-top: 1.5rem;}
    .pet-image-wrap .img-wrap,
    .pet-image-wrap-single .img-wrap{padding-top: 100%;}
    #post-pet-visual .post-pet-tag{margin-top: 1rem;}
    #post-pet-visual .post-pet-tag .tags-list{margin: -0.5rem -0.25rem 0;}
    #post-pet-visual .post-pet-tag .tags-list li{padding: 0.5rem 0.25rem 0;}
    #post-pet-visual .post-pet-price{font-size: 14px;}
    
    .post-pet-exp-wrap{font-size: 14px;}
    
    #post-pet-profile .contents-inner-sm{padding: 0;}
    .pet-profile-table{margin-top: -1rem;}
    .pet-profile-table th,
    .pet-profile-table td{
        padding: 1rem 0 0.5rem;
        vertical-align: middle;
    }
    .pet-profile-table th{
        font-size: 16px;
        width: 30%;
        padding-left: 0;
    }
    .pet-profile-table td{
        font-size: 14px;
        width: 70%;
        padding-right: 0;
    }
    .pet-contact-btn{margin-top: 1.5rem;}
    .pet-contact-btn ul{display: block;}
    .pet-contact-btn ul li{
        width: auto;
        margin-top: 1rem;
    }
    .pet-contact-btn ul li:first-child{margin-top: 0;}
    .pet-contact-btn ul li a{width: 90%;}
    
    .other-category-list{margin: 0 -0.5rem;}
    .other-category-list li{
        width: 50%;
        padding: 0 0.5rem;
        margin-top: 1rem;
    }
    .other-category-list li:nth-child(-n+2){margin-top: 0;}
    .other-category-name-wrap{padding: 0 0.5rem 0.5rem;}
    .other-category-name{
        font-size: 10px;
        font-weight: 700;
        width: calc(100% - 18px);
    }
    .other-category-name-arrow{width: 18px;}
}

/* wp plugin
----------------------------------------------------------------*/
/* pagenavi */
.wp-pagenavi {
    clear: both;
    text-align: center;
    font-size: 14px;
    padding-top: 60px;
}
.wp-pagenavi a, .wp-pagenavi span {
    text-decoration: none;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    padding: 0.2em 0.6em;
    color: #fff;
    display: inline-block;
}
.wp-pagenavi a {
    color: #8ed7df;
}
.wp-pagenavi .pages{
    border: none;
    color: #4d4d4d;
    padding: 0;
    margin-bottom: 0.5em;
    display: block;
    background-color: transparent;
}
.wp-pagenavi > :nth-child(2){
    border-left: 1px solid #ddd;
}
.wp-pagenavi > :last-child{
}
.wp-pagenavi .extend{
    display: none;
}
.wp-pagenavi a:hover{background-color: #8ed7df; color: #fff;}
.wp-pagenavi span.current{background-color: #8ed7df;}

@media screen and (max-width: 767px) {
    .wp-pagenavi {
        font-size: 12px;
        padding-top: 2rem;
    }
}

/* ページ
----------------------------------------------------------------*/
/* ホーム */
#visual-slider-wrap{
    position: relative;
    margin-bottom: 80px;
}
.visual-slider-item-inner{
    padding-top: 780px;
}

.slick-dotted.slick-slider{margin-bottom: 0 !important;}
.slide-dots {
    margin: 1rem 0 0;
    text-align: center;
    font-size: 0;
    line-height: 0;

}
.slide-dots li {
    display: inline-block;
    margin: 0 5px;
}
.slide-dots button {
    padding: 0;
    color: transparent;
    outline: none;
    width: 64px;
    border: unset;
    height: 4px;
    display: block;
    background: #8ed7df;
    cursor: pointer;
    text-indent: -9999px;
    font-size: 0;
    line-height: 0;
}
.slide-dots .slick-active button {
    background: #ceb4d6;
}

#visual-on{
    position: absolute;
    top: 0;
    left: 0;
    height: 780px;
}

#visual-text{
    width: 100%;
    padding: 80px 100px 0;
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
}
#visual-text-title{
    font-size: 64px;
    letter-spacing: 0.1em;
    margin-bottom: 1rem;
}
#visual-text-sub{
    font-size: 18px;
    letter-spacing: 0.1em;
    margin-bottom: 1rem;
}
#visual-text-btn a{
    width: 192px;
}

#news-wrap{
    width: 100%;
    max-width: 930px;
    position: absolute;
    padding: 1rem 144px 1rem 2rem;
    right: 0;
    bottom: 0;
    background-color: #fff4ea;
}
.news-contents{
    display: flex;
}
.news-title{
    width: 170px;
    color: #8ed7df;
}
.news-title .font-en{
    font-size: 32px;
    font-weight: 500;
}
.news-title .font-en{
    font-size: 32px;
    font-weight: 500;
    line-height: 1.1718;
}
.news-title .font-jp{
    font-size: 16px;
    font-weight: 500;
}

.news-list-wrap{
    width: calc(100% - 170px);
}
.news-more-btn{
    position: absolute;
    right: 0;
    bottom: 0;
}
.news-more-btn a{
    display: block;
    width: 128px;
    height: 30px;
    line-height: 30px;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    color: #fff;
    background-color: #8ed7df;
}
.news-more-btn a:hover{
    background-color: #ceb4d6;
}

#top-pickup{
    position: relative;
    padding-bottom: 60px;
}
#top-pickup::after{
    content: '';
    display: block;
    width: 100%;
    height: calc(100% - 76px);
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: #fff4ea;
}
#pickup-wrap{
    display: flex;
    position: relative;
    z-index: 1;
}
#pickup-title{
    width: 23%;
    padding-right: 1.5rem;
    text-align: right;
}
#pickup-title-main{
    display: inline-block;
    color: #8ed7df;
    text-align: left;
    padding-bottom: 1rem;
}
#pickup-title-main .font-en{
    font-size: 32px;
    line-height: 1.1718;
}
#pickup-title-main .font-jp{
    font-size: 16px;
}
#pickup-title-sub{
    text-align: left;
    padding-top: 2rem;
}
#pickup-title-sub .font-jp{
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.05em;
}
.pickup-title-btn{
    margin-top: 1rem;
}
.pickup-title-btn a{
    background-color: #ceb4d6;
}
.pickup-title-btn a:hover{
    background-color: #8ed7df;
}

#pickup-contents{
    width: 77%;
}

#top-search{padding: 80px 0;}
.search-sub-section{
    margin-top: 60px;
}
.search-sub-title{
    font-size: 24px;
    color: #8ed7df;
    text-align: center;
    letter-spacing: 0.1em;
}
.search-sub-body{
    padding-top: 20px;
}

#top-vision{
    padding: 80px 0 0;
    background-color: #fff4ea;
}
#top-vision-wrap{
    display: flex;
    position: relative;
    z-index: 2;
}
#top-vision-wrap .section-head{
    width: 300px;
    text-align: left;
}
#top-vision-wrap .section-body{
    width: calc(100% - 300px);
    margin-top: 0;
}
#top-vision-text{
    padding: 2rem;
    background-color: #fff;
}
#top-vision-text p{
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.1em;
}
#top-vision-text p:last-child{
    margin-bottom: 0;
}
#top-vision-btn{
    margin-top: 1rem;
    text-align: right;
}
#top-vision-btn a{
    display: inline-block;
    width: 200px;
}
#top-vision-image-pc{
    margin: 0;
    position: relative;
    z-index: 1;
    margin-top: -200px;
}
#top-vision-image-pc .img-wrap{
    padding-top: 61.3%;
}

#top-offer{
    padding: 80px 0;
    background-color: #fff4ea;
}
#top-offer-list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
}
#top-offer-list li{
    display: flex;
    width: calc(100% / 2);
    padding: 0 1rem;
    margin-top: 2.5rem;
}
#top-offer-list li:nth-child(-n+2){
    margin-top: 0;
}
.top-offer-box{
    width: 100%;
    border-radius: 75px 0 0 0;
    overflow: hidden;
}
.top-offer-head{
    position: relative;
}
.top-offer-title{
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
    text-align: center;
}
.top-offer-title h3{
    display: inline-block;
    padding: 0.5rem 1em;
    font-size: 24px;
    font-weight: 500;
    color: #8ed7df;
    background-color: #fff;
}
.top-offer-head .img-wrap{
    padding-top: 58.82%;
}
.top-offer-body{
    margin-top: 1rem;
}
.top-offer-body p{
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
}
.top-offer-body p:last-child{
    margin-bottom: 0;
}

#sp-news{
    display: none;
}

#top-about{
    padding: 80px 0;
}
.about-wrap{
    display: flex;
    align-items: flex-end;
}
.about-company{
    width: 60%;
    padding-right: 40px;
}
.about-company-head{
    display: flex;
}
.about-company-name{
    width: calc(100% - 110px);
    padding-right: 2rem;
}
.about-company-name .profile-name{
    font-size: 32px;
    letter-spacing: 0.2em;
}
.about-company-name .profile-name span{
    font-size: 20px;
}
.about-company-name .profile-number{
    font-size: 14px;
    font-weight: 500;
    margin-top: 0.5rem;
}
.about-company-name .profile-number span{
    display: inline-block;
    width: 160px;
    font-size: 12px;
}
.about-company-logo{
    width: 110px;
}
.about-company-table{
    margin-top: -2.5rem;
}
.about-company-table th,
.about-company-table td{
    font-size: 16px;
    padding: 1rem 0 0 0;
    text-align: left;
    vertical-align: bottom;
    border-bottom: 1px dotted #573930;
}
.about-company-table th{
    width: 160px;
    font-weight: 500;
    letter-spacing: 0.45em;
}
.about-company-table td{
    font-weight: 400;
    letter-spacing: 0.45em;
}
.about-company-table td span{
    font-size: 14px;
}
.about-image-pc{width: 40%;}
.about-image-pc .img-wrap{padding-top: 65.17%;}
.about-map-wrap{
    margin-top: 2rem;
}
.about-map{
    position: relative;
    padding-bottom: 28.92%;
    height: 0;
    overflow: hidden;
}
.about-map iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

@media screen and (max-width: 767px) {
    #visual-slider-wrap{margin-bottom: 2rem;}
    .visual-slider-item-inner{padding-top: 100%;}
    .slide-dots button {
        width: 24px;
        height: 3px;
    }
    #visual-on{
        position: relative;
        height: auto;
        margin-top: -2.5rem;
        z-index: 10;
    }
    #visual-text{
        width: 100%;
        padding: 0 2rem;
        position: static;
        color: #573930;
    }
    #visual-text-title{
        font-size: 24px;
        margin-bottom: 1rem;
    }
    #visual-text-sub{
        font-size: 12px;
        margin-bottom: 1rem;
    }
    #visual-text-btn a{
        height: 30px;
        line-height: 30px;
        margin: 0 auto;
    }
    #visual-on #news-wrap{display: none;}
    /*#news-wrap{
        position: static;
        padding: 2rem;
    }*/
    .news-contents{display: block;}
    .news-title{
        width: auto;
        text-align: center;
    }
    .news-title .font-en{font-size: 20px;}
    .news-title .font-jp{font-size: 12px;}

    .news-list-wrap{
        width: auto;
        margin-top: 1.5em;
    }
    .news-more-btn{
        position: static;
        margin-top: 1em;
    }
    .news-more-btn a{
        font-size: 14px;
        margin: 0 auto;
    }

    #top-pickup{padding-bottom: 2rem;}
    #top-pickup::after{height: calc(100% - 250px);}
    #pickup-wrap{
        display: block;
        padding: 0 2rem;
    }
    #pickup-title{
        width: auto;
        padding-right: 0;
        text-align: left;
    }
    #pickup-title-main{
        display: block;
        padding-bottom: 0;
    }
    #pickup-title-main .font-en{font-size: 20px;}
    #pickup-title-main .font-jp{font-size: 12px;}
    #pickup-title-sub{padding-top: 1.5rem;}
    #pickup-title-sub .font-jp{font-size: 12px;}
    .pickup-title-btn{margin-top: 2rem;}
    .pickup-title-btn.br-sp{display: block;}
    #pickup-contents{
        width: auto;
        margin-top: 1.5rem;
    }
    #pickup-contents .pet-list{
        display: block;
        margin: 0;
    }
    #pickup-contents .pet-list li{
        width: auto;
        padding: 0;
        margin-top: 1.5rem !important;
    }
    #pickup-contents .pet-list li:first-child{margin-top: 0 !important;}
    #pickup-contents .pet-list .pet-list-contents{padding-right: 5rem;}
    #pickup-contents .pet-list-name{font-size: 16px;}
    #pickup-contents .pet-list-gender{display: block;}
    #pickup-contents .pet-list-price{
        font-size: 14px;
        margin-top: 0.5rem;
    }
    #pickup-contents .pet-list-price .font-en{font-size: 24px;}
    #pickup-contents .pet-list-exp,
    #pickup-contents .pet-list-birthday{
        display: block;
        font-size: 14px;
    }
    #pickup-contents .pet-list-view{
        display: block;
        font-size: 12px;
    }
    
    #top-search{padding: 2rem 0;}
    .search-sub-section{margin-top: 2rem;}
    .search-sub-title{font-size: 18px;}
    .search-sub-body{padding-top: 1.5rem;}
    .search-sub-body .contents-inner-sm{padding: 0;}
    
    #top-vision{padding: 2rem 0;}
    #top-vision-wrap{
        display: block;
        position: static;
    }
    #top-vision-wrap .section-head{
        width: auto;
        padding: 0 2rem;
    }
    #top-vision-image-sp{
        display: block;
        margin-top: 1.5rem;
    }
    #top-vision-image-sp .img-wrap{padding-top: 61.3%;}
    #top-vision-wrap .section-body{
        width: auto;
        margin-top: 1.5rem;
    }
    #top-vision-text{
        padding: 0 2rem;
        background-color: transparent;
    }
    #top-vision-text p{font-size: 14px;}
    #top-vision-btn{text-align: center;}
    #top-vision-btn a{
        display: block;
        width: 192px;
        height: 30px;
        line-height: 30px;
    }
    
    #top-offer{
        padding: 2rem 0;
        background-color: transparent;
    }
    #top-offer .contents-inner{padding: 0;}
    #top-offer .section-head{padding: 0 2rem;}
    #top-offer-list{
        display: block;
        margin: 0;
    }
    #top-offer-list li{
        display: block;
        width: auto;
        padding: 0;
        margin-top: 2rem !important;
    }
    #top-offer-list li:first-child{margin-top: 0 !important;}
    .top-offer-box{border-radius: 0;}
    .top-offer-title{
        width: calc(100% - 4rem);
        left: 50%;
        transform: translateX(-50%);
    }
    .top-offer-title h3{
        display: block;
        font-size: 20px;
        text-align: center;
    }
    .top-offer-head .img-wrap{padding-top: 66.66%;}
    .top-offer-body{padding: 0 2rem;}
    .top-offer-body p{font-size: 14px;}
    
    #sp-news{
        display: block;
        padding: 2rem;
        background-color: #fff4ea;
    }

    #top-about{padding: 2rem 0;}
    #top-about .contents-inner{padding: 0;}
    #top-about .section-head{
        text-align: left;
        padding: 0 2rem;
    }
    .about-wrap{display: block;}
    .about-company{
        width: auto;
        padding-right: 0;
    }
    .about-company-head{padding: 0 2rem;}
    .about-company-name{
        width: calc(100% - 74px);
        padding-right: 1rem;
    }
    .about-company-name .profile-name{
        font-size: 24px;
        letter-spacing: 0.1em;
    }
    .about-company-name .profile-name span{font-size: 14px;}
    .about-company-name .profile-number{font-size: 12px;}
    .about-company-name .profile-number span{
        display: block;
        width: auto;
        font-size: 10px;
    }
    .about-company-logo{width: 74px;}
    .about-image-sp{
        display: block;
        margin-top: 1rem;
    }
    .about-image-sp .img-wrap{padding-top: 65.17%;}
    .about-company-body{
        margin-top: 1rem;
        padding: 0 2rem;
    }
    .about-company-table{margin-top: -1rem;}
    .about-company-table th{
        width: 80px;
        font-size: 14px;
        letter-spacing: 0.15em;
    }
    .about-company-table td{
        width: calc(100% - 80px);
        font-size: 12px;
        letter-spacing: 0.25em;
    }
    .about-company-table td span{font-size: 12px;}
    .about-map-wrap{
        margin-top: 1rem;
        padding: 0 2rem;
    }
    .about-map{padding-bottom: 75%;}
}

/* about */
@media screen and (max-width: 767px) {
    #about #contents .contents-inner{padding: 0;}
}

/* Contact */
#line-contact-btn a#line-btn{
    max-width: 400px;
    background-color: #8edf91;
    margin: 0 auto;
}
#line-contact-btn a img{
    width: 24px;
    margin-right: 0.5rem;
}

input[type="text"],input[type="tel"],input[type="email"],textarea,select{
	font-size: 100%;
	padding: 0.25em;
	border-style: solid;
	border-width: 1px;
	border-color: #ddd;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
    background-color: transparent;
}
input[type="radio"]{
	vertical-align: middle;
	margin: 0 0.2em 0 0;
}
label{}
/* .req{
	color: #ff6666;
	font-size: 75%;
	margin-left: 0.5em;
} */
.wpcf7 .wpcf7-list-item{
    margin-left: 0;
    margin-right: 0.5em;
}
.wpcf7-form #submit{
    max-width: 400px;
    margin: 0 auto;
    border: none;
    cursor: pointer;
    transition: all .5s;
    font-family : inherit;
}

span.wpcf7-not-valid-tip{
    font-weight: bold;
}

.screen-reader-response p,
.screen-reader-response ul{
    margin: 0 !important;
}

.wpcf7-form .wpcf7-spinner{
    display: block;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    div.wpcf7 img.ajax-loader{width: auto;}
	
	#pp{font-size: 85%;}
}
