@charset "UTF-8";
/* basic */
html {
    overflow: auto;
}
body {
    margin: 0 auto;
    padding: 0px;
    font-family:'Noto Sans Japanese',sans-serif;
    overflow-x: hidden;
    position: relative;
    min-width: 1000px;
    color: #000;
}
img {
    border: none;
    max-width: 100%;
}
li {
    list-style-type: none;
}
/* link */
a {
    text-decoration: none;
}
a:hover {
    opacity: 0.8;
}
a:link { color:#3E3A39; text-decoration:none;}
a:visited {color:#3E3A39; text-decoration:none;}
a:hover {color:#3E3A39; text-decoration: none;}
a,
a::before,
a::after {
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

button,
button::before,
button::after {
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}

/*--- pankuzu ---*/
ul#pankuzu {
    margin: 0 auto;
    padding: 10px 0;
    width: 1000px;
    font-size: 13px;
}
#pankuzu li {
    float: left;
    font-size: 13px;
}
#pankuzu li {
    float: left;
    font-size: 13px;
}

.voice .bx-wrapper {
    max-width: 900px!important;
    margin: 0 auto!important;
    padding: 0 90px!important;
    box-shadow: none!important;
    border: none!important;
    z-index: 0;
}
.voice .bx-wrapper .bx-next,
.voice .bx-wrapper .bx-prev {
    top: 165px;
    width: 36px;
    height: 64px;
    padding: 5px;
    font-size: 90px;
    font-family: helvetica;
    line-height: 0.4;
    color: #fff;
    background-image: none;
    background-color: #F6c1cd;
    box-sizing: border-box;
}
.voice .bx-wrapper .bx-next {
    right: 30px;
}
.voice .bx-wrapper .bx-prev {
    left: 30px;
}
.voice .bx-wrapper .bx-controls-direction a {
    text-indent: 0;
}

/* layout */
#container {
    width: 100%;
    margin: 0 auto;
}
header {
    position: fixed;
    width: 100%;
    height: 90px;
    padding: 15px 50px;
    background: #E73278;
    box-sizing: border-box;
    z-index: 10;
}
header div {
    width: 1000px;
    margin: 0 auto;
}
header div h1 {
    float: left;
}
header div h1 img {
    display: block;
    width: 183px;
    padding: 5px 0 0 0;
}
header .tel {
    float: left;
    display: block;
    width: 336px;
}
header button.btn_chat {
    float: left;
    display: block;
    width: 114px;
    height: 59px;
    margin: 0 0 0 15px;
    line-height: 59px;
    color: #0096FF;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    letter-spacing: -0.5px;
    background-color: #FCEE00;
    border-radius: 3px;
    box-shadow: 0 5px #BDB300;
    font-family: 'Noto Sans Japanese',sans-serif;
    border: none;
}
header button.btn_chat:hover {
    opacity: 1;
    cursor: pointer;
    color: #37b2ea;
    background-color: #fff672;
}
h2 {
    text-align: center;
    font-size: 33px;
    font-weight: 500;
    line-height: 46px;
    padding: 40px 0;
}
h3 {
    width: 1000px;
    margin: 0 auto 40px;
    padding: 10px 0;
    font-size: 26px;
    font-weight: 500;
    text-align: center;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}

.notes {
    font-size: 12px;
    text-align: justify;
}
.list_box .notes,
.con_box .notes {
    padding: 20px;
    text-align: center;
}
.con_btn {
    width: 1000px;
    margin: 0 auto 30px;
    text-align: center;
    background: #FEF8A6;
}
.btn_app {
    display: inline-block;
    margin: 30px 20px 35px;
}
.btn_app a{
    display: block;
    width: 423px;
    height: 86px;
    color: #FFF;
    font-size: 29px;
    font-weight: 500;
    line-height: 86px;
    text-align: center;
    border-radius: 5px;
    background-color: #00A33E;
    box-shadow: 0 5px #006C54;
}
header .btn_app {
    float: left;
    margin: 0;
}
header .btn_app a {
    display: block;
    width: 204px;
    height: 55px;
    margin: 0 15px;
    line-height: 55px;
    font-size: 19px;
    letter-spacing: 0;
    border-radius: 5px;
}
.btn_app a:hover {
    opacity: 1;
    background-color: #42b56d;
}
.link_list {
    display: inline-block;
    margin: 30px 20px 35px;
}
.link_list a{
    display: block;
    width: 423px;
    height: 86px;
    color: #FFF;
    font-size: 29px;
    font-weight: 500;
    line-height: 86px;
    text-align: center;
    border-radius: 5px;
    background-color: #E73278;
    box-shadow: 0 5px #AD265A;
}

.top_box {
    min-width: 1050px;
    width: 100%;
    margin: 0 auto;
    padding: 130px 0 0;
    text-align: center;
}
.top_box div {
    margin: 0 -300px;
}
.top_box div img{
    width: 1600px;
    margin: 0 auto;
}

.top_box2 div img{
    width: 1000px;
    margin: 0 auto;
}

.con_box {
    width: 1050px;
    margin: 0 auto;
}
.con_box img{
    display: block;
    margin: 0 auto;
}

.point {
    padding: 60px 0;
}
.point > img{
    width: 808px;
    margin: 0 auto;
    display: block;
}
.point ol {
    padding: 40px 0 0;
    text-align: center;
}
.point ol li{
    display: inline-block;
    width: 155px;
    margin: 0 -5px;
    padding: 0;
}
.price img.hikaku{
    width: 775px;
    margin: 0 auto;
}
.price img.all_p{
    width: 896px;
    margin: 0 auto;
}
.price .notes {
    width: 1000px;
    margin: 0 auto;
    padding: 25px 0 60px;
    font-size: 11px;
    letter-spacing: -0.2px;
}
.price .notes span{
    color: #E63178;
}
.price .kome {
    width: 910px;
    margin: 0 auto;
    padding: 35px 0 40px;
    font-size: 14.5px;
    text-align: justify;
    line-height: 22px;
}
.howto {
    text-align: center;
}
.howto .h01 {
    width: 623px;
    padding: 20px 0 50px;
}
.howto .h02 {
    width: 1002px;
}

.onsei {
    padding: 80px 0 30px;
}
.onsei .p01 {
    width: 1007px;
}
.onsei .p02 {
    width: 1001px;
    padding: 60px 0;
}
.onsei .p03 {
    width: 843px;
}
.data .p04 {
    width: 1002px;
    padding: 60px 0;
}
.data .p05 {
    width: 1000px;
}
.data .p06 {
    width: 815px;
    padding: 60px 0;
}
.data .p07 {
    width: 815px;
}
.data .p08 {
    width: 300px;
    padding: 60px 0;
}

.opsp {
    text-align: center;
}
.opsp .ttl {
    padding: 30px 0;
    font-size: 36px;
    font-weight: 500;
    text-align: center;
}
.opsp .opl_01 li{
    display: inline-block;
    width: 310px;
    margin: 0 13px;
    font-size: 17px;
    text-align: left;
}
.opsp .opl_02 li{
    display: inline-block;
    width: 238px;
    margin: 0 5px 20px;
    font-size: 17px;
    text-align: left;
}
.opsp .opl_03 li{
    display: inline-block;
    width: 310px;
    margin: 0 13px;
    font-size: 17px;
    text-align: left;
}

.apply .ttl {
    padding: 30px 0;
    text-align: center;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
}
.apply ul {
    text-align: center;
}
.apply li {
    display: inline-block;
    width: 225px;
    margin: 0 auto;
    padding: 10px;
    font-size: 13px;
    line-height: 22px;
    letter-spacing: -0.2px;
    text-align: justify;
    vertical-align: top;
}
.apply li p {
    width: 220px;
    margin: 0 auto;
}
.apply img {
    width: 225px;
    padding-bottom: 10px;
}
.apply img.a01 {
    width: 1000px;
    padding: 30px 0;
}
.need .ttl {
    padding: 30px 0;
    text-align: center;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
}
.need table {
    width: 1000px;
    margin: 0 auto;
    border-collapse: collapse;
}
.need table td {
    display: table-cell;
    width: 200px;
    padding: 10px;
    border: 1px solid #B3B3B3;
    vertical-align: top;
    box-sizing: border-box;
}
.need table td img {
    width: 85px;
    padding: 20px 0 10px;
}
.need table td a{
    display: inline-block;
    margin: 5px 0 0;
    text-align: left;
}
.need table td a img {
    width: auto;
    height: 27px;
    padding: 0;
}
.need p {
    padding-bottom: 5px;
    font-size: 13px;
    text-align: justify;
}
.need p.b_t {
    padding: 0 0 10px;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}
.need span {
    color: #E73278;
}
.need span.bb {
    font-size: 15px;
    font-weight: 500;
}
.voice {
    padding: 30px 0;
}
.voice .ttl {
    padding: 30px 0;
    text-align: center;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
}
.voice ul {
    text-align: center;
}
.voice li{
    position: relative;
    display: inline-block;
    width: 275px;
    height: 348px;
    margin: 0;
    padding: 25px;
    text-align: justify;
    font-size: 19px;
    line-height: 27px;
    border: 1px solid #B3B3B3;
    box-sizing: border-box;
    vertical-align: top;
}
.voice .name {
    position: absolute;
    bottom: 20px;
    right: 20px;
    font-size: 16px;
    line-height: 24px;
    text-align: right;
}
.ambassador {
    padding: 0 0 60px;
}
.ambassador .ttl {
    padding: 30px 0;
    text-align: center;
    font-size: 36px;
    font-weight: 500;
    line-height: 48px;
}
.ambassador > div {
    width: 1000px;
    margin: 0 auto;
    padding: 15px;
    text-align: center;
    border: 1px solid #B3B3B3;
    box-sizing: border-box;
}
.ambassador > div > p{
    display: inline-block;
    width: 740px;
    padding-right: 20px;
    font-size: 15px;
    text-align: justify;
    vertical-align: middle;
}
.ambassador > div > div{
    display: inline-block;
    width: 165px;
    box-sizing: border-box;
    vertical-align: middle;
}
.ambassador > div > div p{
    width: 165px;
    padding: 5px 0;
    font-size: 12px;
    text-align: left;
    letter-spacing: -0.5px;
}
.ambassador > div > div p.name_y{
    text-align: right;
}


.list_box {
    padding-top: 70px;
}
.list_box .ttl {
    width: 1000px;
    height: 55px;
    margin: 40px auto;
    color: #fff;
    font-size: 26px;
    line-height: 55px;
    letter-spacing: 5px;
    font-weight: bold;
    text-align: center;
    background-color: #E73278;
    box-sizing: border-box;
}
.list_box > div {
    width: 1000px;
    margin: 0 auto;
    text-align: left;
    box-sizing: border-box;
}
.list_box > div a{
    float: left;
    width: 180px;
    margin: 0 25px 40px 0;
}
.list_box > div a:nth-child(5){
    margin: 0;
}
.list_box > div img{
    float: left;
    width: 180px;
}

footer {
    width: 100%;
    height: auto;
    padding: 10px 0;
    color: #fff;
    font-size: 11px;
    text-align: center;
    background: #E73278;
    box-sizing: border-box;
}
footer div {
    width: 1080px ;
    margin: 0 auto;
    text-align: center;
}

footer img {
    padding: 0 20px;
}


.pc_none {
    display: none!important;
}


/* モバイルCSS */
@media screen and ( max-width:667px ) {
body {
    min-width: auto;
    width: 100%;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
}

.voice .bx-wrapper {
    max-width: 300px!important;
    margin: 0 auto!important;
    padding: 0 50px!important;
    box-shadow: none!important;
    border: none!important;
    z-index: 0;
    box-sizing: border-box;
}
.voice .bx-wrapper .bx-next,
.voice .bx-wrapper .bx-prev {
    top: 125px;
    width: 30px;
    height: 46px;
    padding: 5px;
    font-size: 64px;
}
.voice .bx-wrapper .bx-next {
    right: 10px;
}
.voice .bx-wrapper .bx-prev {
    left: 10px;
}
.voice .bx-wrapper .bx-controls-direction a {
    text-indent: 0;
}

header {
    height: 80px;
    padding: 5px 0;
}
header div {
    width: 100%;
    margin: 0 auto;
}
header div h1 {
    padding: 0 1%;
}
header div h1 img {
    position: absolute;
    width: 110px;
    top: 5px;
    left: 10px;
}
header .tel {
    position: absolute;
    float: none;
    width: 180px;
    top: 8px;
    right: 8px;
}
header button.btn_chat:hover {
    opacity: 1;
    cursor: pointer;
    color: #37b2ea;
    background-color: #fff672;
}
header .btn_app {
    display: block;
    width: 46%;
    margin: 41px 0 0 2%;
}
header .btn_app a {
    display: block;
    width: 100%;
    height: 25px;
    margin: 0;
    line-height: 25px;
    font-size: 11px;
    border-radius: 3px;
    box-shadow: 0 3px #006C54;
}
header .btn_shop {
    margin: 41px 0 0;
    display: block;
}
header .btn_shop a {
    width: 90px;
    height: 25px;
    margin: 0 0 0 7px;
    line-height: 25px;
    font-size: 11px;
    border-radius: 3px;
    box-shadow: 0 3px #0071A4;
}
header button.btn_chat {
    width: 48%;
    height: 25px;
    margin: 41px 0 0 2%;
    line-height: 25px;
    font-size: 11px;
    border-radius: 3px;
    box-shadow: 0 3px #BDB300;
}


h2 {

}
h3 {
    width: 90%;
    margin: 0 auto 20px;
    font-size: 20px;
    line-height: 28px;
}
.con_btn {
    width: 90%;
    margin: 0 auto 20px;
}

.btn_app {
    margin: 10px auto 15px;
}
.btn_app a {
    width: 230px;
    height: 47px;
    margin: 10px auto;
    line-height: 47px;
    font-size: 16px;
}

ul#pankuzu {
    width: 100%;
    margin: 0 2.5%;
    padding: 85px 0 5px;
}
ul#pankuzu li{
    font-size: 12px;
}

a.btn_app {
    display: block;
    width: 300px;
    height: 96px;
    margin: 20px auto;
    line-height: 96px;
    font-size: 33px;
}
.link_list {
    margin: 10px auto 0;
    font-size: 33px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
}
.link_list a {
    width: 230px;
    height: 47px;
    margin: 10px auto;
    line-height: 47px;
    font-size: 16px;
}

.top_box {
    min-width: auto;
    width: 100%;
    padding: 100px 0 0;
}
.top_box div{
    margin: 0 auto;
}
.top_box div p{
    width: 100%;
}

.con_box {
    width: 100%;
    margin: 0 auto
}

.point {
    padding: 20px 0 0;
}
.point p {
    padding-bottom: 20px;
    font-size: 14px;
    text-align: center;
    font-weight: 500;
}
.point > img {
    width: 90%;
}
.point ol {
    width: 90%;
    margin: 0 auto;
    padding: 20px 0;
}
.point ol li{
    width: 100%;
    padding: 0 0 5px;
}

.price p.ttl {
    padding: 0 0 13px;
    color: #000;
    font-size: 25px;
    font-weight: bold;
    line-height: 34px;
    text-align: center;
}
.price img.hikaku{
    width: 88%;
}
.price img.all_p{
    width: 90%;
}
.price .notes {
    width: 90%;
    padding: 20px 0 50px;
    letter-spacing: 0;
    text-align: justify;
}
.price .kome {
    width: 90%;
    margin: 0 auto;
    padding: 10px 0 40px;
    font-size: 11px;
    text-align: justify;
    line-height: 15px;
}
.howto {
    text-align: center;
}
.howto strong {
    font-size: 30px;
}
.howto .text {
    font-size: 13px;
    font-weight: 500;
}
.howto .ttl2 {
    font-size: 23px;
    font-weight: bold;
    line-height: 31px;
    color: #000;
}
.howto .h01,
.howto .h02 {
    width: 90%;
    margin: 0 auto;
}
.onsei {
    width: 90%;
    margin: 0 auto;
    padding: 40px 0 20px;
}
.onsei .p01 {
    width: 100%;
}
.onsei .p02 {
    width: 100%;
    padding: 60px 0;
}
.onsei .p03 {
    width: 100%;
}
.data {
    width: 90%;
    margin: 0 auto;
    padding: 20px 0;
}
.data .p04 {
    width: 100%;
    padding: 30px 0 20px;
}
.data .p05 {
    width: 100%;
}
.data .p06 {
    width: 100%;
    padding: 40px 0 30px;
}
.data .p07 {
    width: 100%;
}
.data .p08 {
    width: 100%;
    padding: 30px 0;
}

.opsp {
    padding: 20px 0 0;
    text-align: center;
}
.opsp .ttl {
    padding: 15px 0;
    font-size: 25px;
    line-height: 31px;
}
.opsp .opl_01 li{
    width: 90%;
    margin: 0 auto 10px;
    font-size: 13px;
    text-align: center;
}
.opsp .opl_02 li{
    width: 90%;
    margin: 0 auto 10px;
    font-size: 13px;
    text-align: center;
}
.opsp .opl_03 li{
    width: 90%;
    margin: 0 auto 10px;
    font-size: 13px;
    text-align: center;
}

.apply .ttl {
    padding: 15px 0;
    font-size: 25px;
    line-height: 32px;
}
.apply ul {
    text-align: center;
}
.apply li {
    display: inline-block;
    width: 90%;
    margin: 0 auto;
    padding: 10px;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: -0.2px;
    text-align: justify;
    vertical-align: top;
}
.apply li p {
    width: 100%;
    margin: 0 auto;
}
.apply img {
    width: 90%;
    margin: 0 auto 0 0;
    padding-bottom: 5px;
}
.apply img.a01 {
    width: 90%;
    margin: 0 auto;
    padding: 30px 0 10px;
}
.need .ttl {
    padding: 15px 0;
    font-size: 25px;
    line-height: 34px;
}
.need table {
    width: 95%;
}
.need table td {
    display: block;
    width: 100%;
    margin: -1px 0 0;
    padding: 10px;
}
.need table td img {
    float: left;
    width: 40px;
    padding: 0 8px 5px 0;
}
.need table td a{
    margin: 0 40px 0 0;
    overflow: hidden;
}
.need table td p a {
    overflow: inherit;
    margin: 0;
}
.need table td a img {
    width: auto;
    height: 27px;
    padding: 0;
}
.need p {
    clear: both;
    padding-bottom: 5px;
    font-size: 13px;
    text-align: justify;
}
.need p.b_t {
    float: left;
    clear: initial;
    padding: 7px 0 10px;
    letter-spacing: -1px;
}
.need span {
    color: #E73278;
}
.need span.bb {
    font-size: 15px;
    font-weight: 500;
}
.voice {
    padding: 30px 0;
}
.voice .ttl {
    padding: 15px 0;
    text-align: center;
    font-size: 25px;
    line-height: 36px;
}
.voice ul {
    text-align: center;
}
.voice li{
    width: 200px!important;
    height: 252px!important;
    margin: 0;
    padding: 15px;
    text-align: justify;
    font-size: 14px;
    line-height: 21px;
}
.voice .name {
    bottom: 10px;
    right: 15px;
    font-size: 11px;
    line-height: 17px;
}
.voice .name {
    bottom: 10px;
    right: 15px;
    font-size: 11px;
    line-height: 17px;
}
.ambassador {
    padding: 0 0 10px;
}
.ambassador .ttl {
    padding: 15px 0;
    font-size: 20px;
    line-height: 28px;
}
.ambassador > div {
    width: 90%;
}
.ambassador > div > p{
    width: 100%;
    padding-right: 0;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: -0.2px;
}
.ambassador > div > div{
    width: 100%;
    padding-top: 15px;
}
.ambassador > div > div img{
    width: 55%;
    margin: 0 auto;
}
.ambassador > div > div p{
    width: 100%;
    margin: 0 auto;
    text-align: justify;
}
.ambassador > div > div p.name_y{
    width: 55%;
    text-align: right;
}

.list_box {
    padding-top: 0;
}
.list_box .ttl {
    width: 90%;
    height: 49px;
    margin: 20px auto;
    font-size: 23px;
    line-height: 49px;
}
.list_box > div {
    width: 90%;
}
.list_box > div a{
    width: 47.5%;
    margin: 0 5% 5% 0;
}
.list_box > div a:nth-child(5){
    margin: 0 5% 5% 0;
}
.list_box > div a:nth-child(even){
    margin: 0 0 5% 0;
}
.list_box > div img{
    float: left;
    width: 230px;
}

footer {
    width: 100%;
    height: auto;
    padding: 10px 0;
    color: #fff;
    font-size: 11px;
    background: #E73278;
    box-sizing: border-box;
}
footer div {
    width: 100% ;
}
footer a.btn_app {
    display: inline-block;
    width: 283px;
    height: 76px;
    margin: 0 auto;
    font-size: 26px;
    line-height: 76px;
    letter-spacing: 1px;
}
footer img {
    padding: 0 20px;
}



.pc_none {
    display: block!important;
}
.sp_none {
    display: none!important;
}

}

