@charset "UTF-8";

/*--------------------------------
reset
--------------------------------*/
html,body,div,p,img,iframe,a,span,blockquote,q,address,cite,
pre,code,em,small,strong,b,i,
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer,time,
h1,h2,h3,h4,h5,h6,
ul,ol,li,dl,dt,dd,
table,tbody,thead,tfoot,th,tr,td,
form,fieldset,legend,label,select,input,textarea,button{
    margin: 0;
    padding: 0;
    border: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: baseline;
}
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer{
    display: block;
}
ul li{
    list-style-type: none;
}
h1,h2,h3,h4,h5,h6{
    font-weight: 500;
}
body{
    line-height: 1;
}
a{
    text-decoration: none;
}
img{
    vertical-align: middle;
}
table{
    border-collapse: collapse;
    border-spacing: 0;
}
select,option,input:not([type=checkbox]):not([type=radio]),textarea,button{
    font: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}
blockquote::before,blockquote::after,q::before,q::after{
    content: '';
    content: none;
}
[type=submit],[type=button],[type=reset],[type=file],button{
    cursor: pointer;
}
:focus{
    outline: none;
}

/*--------------------------------
base
--------------------------------*/
html{
    font-size: 62.5%;
}
body{
    font-size: 1.6rem;
    line-height: 1.65;
    font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
    color: #1a1a1a;
}
img{
    max-width: 100%;
}
.wrap{
    margin: auto;
    max-width: 750px;
}
.inner{
    padding: 0 4%;
}
.h1{
    margin-bottom: 6%;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.4;
}
.h2{
    margin-bottom: 4%;
    border-radius: 10px;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    color: #b835fd;
}
.text{
    margin-bottom: 6%;
}
.text-box{
    padding: 0 2%;
}

/*--------------------------------
breadcrumbs
--------------------------------*/
.breadcrumbs{
    padding: 2% 4%;
    display: flex;
    justify-content: flex-end;
    background: #f4f4f4;
    font-size: 1.2rem;
}
.breadcrumbs .li{
    margin-right: 20px;
    position: relative;
    color: #676767;
}
.breadcrumbs .li::after{
    margin: auto;
    content: "";
    position: absolute;
    top: 0;
    right: -12px;
    bottom: 0;
    width: 4px;
    height: 4px;
    border-top: 1px solid #7e745f;
    border-right: 1px solid #7e745f;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.breadcrumbs .li:last-child{
    margin-right: 0;
    color: #7e745f;
}
.breadcrumbs .li:last-child::after{
    display: none;
}

/*--------------------------------
contents
--------------------------------*/
.date{
    padding: 2% 0;
    text-align: right;
    color: #b0aca2;
    font-size: 1.2rem;
}
.mt{
    margin-bottom: 6%;
}
.app .btn-link{
    margin-bottom: 8px;
    padding: 4%;
    display: block;
    position: relative;
    background: #f8f6f9;
    border: ridge 6px #e7556a;
    box-shadow: 0 8px #933643;
    color: inherit;
}
.app{
    margin-bottom: 6%;
    padding: 0 6%;
    overflow: hidden;
}
.app .h2{
    position: relative;
}
.app .h2::before,
.app .h2::after{
    margin: auto;
    width: 16px;
    height: 16px;
    background: #b835fd;
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}
.app .h2::before{
    left: 0;
}
.app .h2::after{
    right: 0;
}
.app-icon{
    max-width: 100px;
}

.tw{
    margin: 0 auto 6%;
    padding: 4%;
    max-width: 550px;
    border: solid 1px #ccd6dd;
    border-radius: 15px;
}
.tw-head{
    margin-bottom: 4%;
    display: flex;
}
.tw-img{
    margin-right: 2%;
    flex: 0 0 50px;
}
.tw-name{
    width: 100%;
    display: flex;
    align-items: center;
}
.tw-name-text{
    font-weight: bold;
    line-height: 1.2;
}
.tw-id{
    font-weight: normal;
    color: #657786;
}

.img-box{
    margin-bottom: 4%;
    text-align: center;
}
.app .inner{
    padding: 0;
}
.app .text-box{
    padding: 0;
    width: 100%;
}
.app .text{
    border-bottom: dotted 2px;
    font-weight: bold;
    text-align: center;
}
.app .li{
    margin: 0 0 4% 8%;
    text-indent: -8%;
    font-size: 1.5rem;
}
.app .ul{
    margin-bottom: 4%;
}
.app .btn .text{
    margin: 0;
    padding: 2%;
    background: #b835fd;
    border: none;
    box-shadow: inset -2px -2px 3px rgba(0,0,0,0.5), inset 2px 2px 3px rgba(255,255,255,0.5);
    font-size: 2.2rem;
    color: #fff708;
}
.number{
    margin-right: 2%;
    width: 6%;
    position: relative;
}

.talk .li{
    margin-bottom: 6%;
    padding: 0 6%;
    text-align: center;
}

/*--------------------------------
span
--------------------------------*/
.big{
    font-size: 125%;
    line-height: 1.4;
}
.bold{
    font-weight: bold;
}
.red{
    color: #dc0000;
}
.marker{
    background: #ffef79;
    font-weight: bold;
}

/*--------------------------------
footer
--------------------------------*/
.footer{
    padding: 2% 0;
    background: #323232;
    text-align: center;
    color: white;
}

/*--------------------------------
media query
--------------------------------*/
    /*--------------------------------
    Xperia
    --------------------------------*/
    @media screen and (max-width:360px){
        html{
            font-size: 60%;
        }
        .app .h2::before,
        .app .h2::after{
            width: 14px;
            height: 14px;
        }
    }
    /*--------------------------------
    iphone se
    --------------------------------*/
    @media screen and (max-width:320px){
        html{
            font-size: 53%;
        }
        .app .h2::before,
        .app .h2::after{
            width: 13px;
            height: 13px;
        }
    }
    /*--------------------------------
    iphone plus
    --------------------------------*/
    @media screen and (min-width:376px){
        html{
            font-size: 69%;
        }
    }
    /*--------------------------------
    phone landscape / tablet
    --------------------------------*/
    @media screen and (min-width:568px){
        .talk .ul{
            margin-bottom: 6%;
            display: flex;
        }
        .talk .li{
            margin: 0 1.5%;
            padding: 0;
            width: 100%;
            flex-basis: auto;
        }
        .talk-img{
            width: 100%;
        }
    }
    /*--------------------------------
    pc / tablet
    --------------------------------*/
    @media screen and (min-width:750px){
        .spbr{
            display: none;
        }
        .breadcrumbs{
            padding: 1% 4%;
        }
        .date{
            padding: 1% 0;
        }
        .tw-name-text{
            font-size: 1.2rem;
        }
        .tw-head{
            margin-bottom: 2%;
        }
        .app{
            padding: 0;
        }
        .app .h2{
            margin-bottom: 3%;
        }
        .app .inner{
            display: flex;
        }
        .app .btn-link{
            margin-bottom: 12px;
            border: ridge 8px #e7556a;
            box-shadow: 0 12px #933643;
        }
        .app-icon{
            max-width: 100%;
        }
        .app .btn .text{
            box-shadow: inset -4px -4px 3px rgba(0,0,0,0.5), inset 4px 4px 3px rgba(255,255,255,0.5);
        }
        .img-box{
            margin: 0 4% 4% 0;
            display: flex;
            align-items: center;
            flex: 0 0 175px;
        }
    }