@charset "utf-8";

/* ===================================================================
Tablet CSS
ウィンドウ幅[641～1023px]の場合に適用
=================================================================== */
@media screen and (max-width: 1023px) {

/*	header
----------------------------------------------------*/
#header {
width: 100%;
border-top: none;
background: white;
z-index: 9999;
}

#header .h_cont {
height: 59px;
margin: 0;
padding: 0;
}

#header .h_cont h1.logo {
margin: 8px;
}

#header .h_cont p.logo {
margin: 8px;
}

#header .h_cont ul.h_menu {
display: none;
}


#header.smaller {
position: fixed;
top: 0;
background: #191978;
}

#header.smaller .h_cont {
height: 45px;
}

#header.smaller .h_cont h1.logo {
display: none;
}

#header.smaller .h_cont p.logo {
display: none;
}

#header.smaller .h_cont p.logo_whi {
display: block;
width: 60px;
padding: 10px;
}

#nav li a:hover:after {
content: none;
}

/*	sp_btn
----------------------------------------------------*/
#sp_btn {
display:block;
}

#sp_btn ul {
-js-display: flex;/* IE8-9 */
display: -ms-flexbox;/* IE10 */
display: flex;
-ms-flex-pack: justify;/* IE10 */
margin: 0;
}

#sp_btn li.mail {
display: none;
}

#header.smaller #sp_btn li.mail {
display: block;
margin: 5px 25px 0 0;
font-size: 24px;
}

#header.smaller #sp_btn li.mail a {
color: white;
text-decoration: none;
}

#sp_btn li.rec a {
display: block;
margin: 12px 10px 0 0;
padding: 5px 10px 3px;
font-weight: bold;
color: #191978;
background: white;
border: 1px solid #191978;
text-decoration: none;
}

#header.smaller #sp_btn li.rec {
margin: 9px 25px 0 0;
}

#header.smaller #sp_btn li.rec a {
margin: 0;
padding: 0 5px;
line-height: 1.5;
color: white;
font-weight: normal;
border: 1px solid white;
background: none;
}

#sp_btn li.menu {
padding: 15px 15px 20px;
background: #191978;
}

#header.smaller #sp_btn li.menu {
margin: 7px 10px 0 0;
padding: 0;
}

#sp_btn li.menu .navi_btn {
display: inline-block;
position: relative;
}

#sp_btn li.menu .navi_icon {
display: block;
width: 25px;
height: 3px;
background: #fff;
transition: .2s;
}

#sp_btn li.menu .navi_icon:before,
#sp_btn li.menu .navi_icon:after{
display: block;
content: "";
position: absolute;
top: 50%;
left: 0;
width: 25px;
height: 3px;
background: #fff;
transition: .3s;
}

#sp_btn li.menu .navi_icon:before{
margin-top: -11px;
}

#sp_btn li.menu .navi_icon:after{
margin-top: 8px;
}

#sp_btn li.menu .navi_btn .close{
background: transparent;
}

#sp_btn li.menu .navi_btn .close:before,
#sp_btn li.menu .navi_btn .close:after{
margin-top: 0;
}

#sp_btn li.menu .navi_btn .close:before{
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
}

#sp_btn li.menu .navi_btn .close:after{
transform: rotate(-135deg);
-webkit-transform: rotate(-135deg);
}

/*	nav
----------------------------------------------------*/
#nav {
display: none;
}

#nav ul {
display: block;
margin-bottom: 0;
background: white;
}

#nav li {
position: static;
width: 100%;
text-align: left;
font-size: 16px;
border-bottom: 1px solid #ccc;
}

#nav li.partners,
#nav li.ad_partners{
width: 100%;
}

#nav li a {
padding-bottom: 0;
}

#home #nav li.home a,
#about #nav li.about a,
#profile #nav li.about a,
#chart #nav li.about a,
#idea #nav li.about a,
#business #nav li.business a,
#nail #nav li.business a,
#support #nav li.business a,
#hearing #nav li.business a,
#partners #nav li.partners a,
#adpartners #nav li.ad_partners a,
#agency #nav li.partners a,
#nav li.recruit a{
border-bottom: none !important;
}

#nav li a:hover {
border-bottom: none;
}

#nav li br {
display: none;
}

#nav li span {
margin-left: 10px;
}

#nav li a {
display: block;
padding: 10px;
}

#nav li:before {
display: none;
}

#nav li:last-child:after {
display: none;
}

#nav li ul {
display: none;
}

.bx-wrapper,
.ttl_bg{
margin-top: 27px;
}

.bx-wrapper{
margin-top: 80px;
}

/*	breadcrumb
----------------------------------------------------*/
.breadcrumb {
padding: 0 10px;
}

/*	main
----------------------------------------------------*/
#main {
display: block;
padding: 0 10px;
}

/*	contents
----------------------------------------------------*/
#contents {
width: 100%;
margin-bottom: 30px;
}

/*	sidebar
----------------------------------------------------*/
#sidebar {
width: 100%;
margin-bottom: 30px;
}

/*	news_side
----------------------------------------------------*/
#news_side {
width: 100%;
margin-bottom: 30px;
}

/* ===================================================================
index style
=================================================================== */

/*	common
----------------------------------------------------*/
.ind_news h2,
.ind_bus h2 {
margin-bottom: 30px;
}

/*	ind_main
----------------------------------------------------*/
.ind_main {
padding: 80px 0;
}

.ind_main h2 {
font-size: 30px;
}

/*	ind_main02
----------------------------------------------------*/
.ind_main02 {
overflow: hidden;
}

.ind_main02 .img {
left: -80px;
}

.ind_main02 div {
right: 0;
}

.ind_main02 h2 {
font-size: 30px;
}

/*	ind_main03
----------------------------------------------------*/
.ind_main03 {
overflow: hidden;
}

.ind_main03 .img {
right: -100px;
width: 340px;
}

.ind_main03 div {
left: 10px;
top: 38px;
}

.ind_main03 h2 {
font-size: 30px;
}

.ind_main03 div br.clear {
display: block;
}

/*	ind_mv_slider
----------------------------------------------------*/
/* .bx-viewport{
height: 90vh;
} */

.ind_mv_slider .mv_item .cont_wrap .cont_flex{
flex-wrap: nowrap;
align-items: flex-end;
padding: 0 30px 30px;
}

.ind_mv_slider .mv_item .cont_wrap .cont_flex .cont{
flex: auto;
}

.ind_mv_slider .mv_item .cont_wrap .cont_flex .link_btn{
flex: 0 0 124px;
margin: 0 0 0 15px
}

.ind_mv_slider .mv_item .cont_wrap .cont_flex .link_btn a{
padding: 14px 34px 14px 20px;
font-size: 1.3rem;
}

.ind_mv_slider .mv_item .cont_wrap .cont_flex .link_btn a:after{
right: 14px;
}

.ind_mv_slider .mv_item .cont_wrap .cont_flex .cont{
flex-direction: column;
align-items: flex-start;
}

.ind_mv_slider .mv_item .cont_wrap .cont_flex .cont h2{
margin: 0 0 .25em;
font-size: 3.6rem;
}

/*	ind_news
----------------------------------------------------*/
.ind_news {
width: 100%;
padding: 30px 0;
}

.ind_news dl {
display: block;
}

.ind_news dl:last-of-type {
margin-bottom: 30px;
}

.ind_news dt {
width: 100%;
padding-bottom: 10px;
border: none;
}

.ind_news dd {
width: 100%;
padding-top: 0;
}

.ind_news p {
margin-bottom: 30px;
}

.ind_news li {
max-width: 32%;
}

/*	ind_bus
----------------------------------------------------*/
.ind_bus .dot{
width: 100%;
padding: 30px 0 0;
}

.ind_bus li {
max-width: 48%;
margin-bottom: 30px;
}

.ind_bus li figcaption {
padding: 10px 10px 0;
}

.ind_bus li h4 {
margin-bottom: 5px;
font-size: 16px;
}

.ind_bus li p {
font-size: 12px;
}


/* ===================================================================
about style
=================================================================== */
#about .sec01 {
-webkit-flex-wrap: nowrap;
flex-wrap: nowrap;
align-items: stretch;
margin-top: 30px;
}

#about .sec01 dl{
margin: 0 5px 30px;
}


/* ===================================================================
idea style
=================================================================== */
#idea section .origin {
padding: 28px;
}

#idea section .origin figcaption {
max-width: 480px;
margin-left: 20px;
}

#idea .comment div {
width: 660px;
}

#idea .comment .ceo {
padding-left: 20px;
}

#idea .comment .ceo p {
font-size: 12px;
}


/* ===================================================================
business style
=================================================================== */
#partners p.mi,
#partners p.mission{
margin-bottom: 30px;
}

#business .sec01 {
margin-top: 30px;
}

#business .sec01 dl{
width: 48%;
margin: 0 5px 20px;
}

/* ===================================================================
support style
=================================================================== */
#support #contents .menu dl {
width: 48%;
margin: 0 5px 20px;
}

/* ===================================================================
hearing style
=================================================================== */
#hearing figure.mi {
width: 100%;
}

#hearing .sec02 dd {
width: 60%;
padding-right: 20px;
}

#hearing .sec03 dd {
width: 60%;
padding-left: 20px;
}

#hearing .sec04 dd {
width: 60%;
padding-right: 20px;
}


/* ===================================================================
dining style
=================================================================== */
#dining figure.mi {
width: 100%;
}

/*#dining .sec_feature ul{
flex-direction: column;
}

#dining .sec_feature ul li{
width: 100%;
margin-bottom: 40px;
}

#dining .sec_feature ul li span{
width: 190px;
margin-right: 15px;
}

#dining .sec_feature ul li dl{
width: 80%;
max-width: 908px;
}

#dining .sec_lonely figure img{
margin-right: 20px;
}

#dining .sec_lonely figcaption{
width: 70%;
}*/

#dining .sec_info .map{
position: relative;
padding: 0 0 56%;
height: 0;
overflow: hidden;
}

#dining .sec_info .map iframe{
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important
}


/* ===================================================================
nail style
=================================================================== */
#nail figure.mi {
width: 100%;
}

#nail .sec03 dd {
width: 60%;
padding-left: 20px;
}

#nail .sec03 dl.rev dd {
padding: 0 20px 0 0;
}

#nail .sec04 dd {
width: 60%;
padding-left: 20px;
}

#nail .sec04 dl.rev dd {
padding: 0 20px 0 0;
}

/* ===================================================================
eyelash style
=================================================================== */
#eyelash figure.mi {
    width: 100%;
    }

    #eyelash .sec03 dd {
    width: 60%;
    padding-left: 20px;
    }

    #eyelash .sec03 dl.rev dd {
    padding: 0 20px 0 0;
    }

    #eyelash .sec04 dd {
    width: 60%;
    padding-left: 20px;
    }

    #eyelash .sec04 dl.rev dd {
    padding: 0 20px 0 0;
    }

/* ===================================================================
eyelash2 style
=================================================================== */
#eyelash2 figure.mi {
    width: 100%;
    }

    #eyelash2 .sec03 dd {
    width: 60%;
    padding-left: 20px;
    }

    #eyelash2 .sec03 dl.rev dd {
    padding: 0 20px 0 0;
    }

    #eyelash2 .sec04 dd {
    width: 60%;
    padding-left: 20px;
    }

    #eyelash2 .sec04 dl.rev dd {
    padding: 0 20px 0 0;
    }

/* ===================================================================
flower style
=================================================================== */
#flower figure.mi {
    width: 100%;
    }

/* ===================================================================
partners style
=================================================================== */
#partners dl {
padding: 0 0 20px;
}

#partners .merit dd {
margin-left: 0;
}

#partners .merit dl.last {
margin-bottom: 0;
}


/* ===================================================================
fitness style
=================================================================== */
#fitness figure.mi {
width: 100%;
}

/* ===================================================================
agency style
=================================================================== */
#agency table {
margin-bottom: 30px;
}

#agency dl {
display: block;
padding: 10px;
}

#agency dt {
margin-bottom: 10px;
text-align: center;
}

#agency dd {
text-align: center;
}

#agency dd ul {
display: inline-flex;
text-align: center;
}

#agency dd li {
margin:0;
}

#agency dd li:first-child {
margin-right: 10px;
}


/* ===================================================================
privacypolicy style
=================================================================== */
#privacypolicy #contents,
#ad-privacypolicy #contents {
padding: 0 10px;
}

#privacypolicy #contents ul,
#ad-privacypolicy #contents ul {
margin-bottom: 20px;
}


/* ===================================================================
recruit style
=================================================================== */
#recruit ul.type {
display: block;
margin: 0 10px 30px;
}

#recruit ul.type li {
max-width: 400px;
margin: 0 auto 30px;
padding: 10px 10px 20px;
}

#recruit #area {
margin-top: -59px;
padding-top: 59px;
}

/* ===================================================================
recruit geron style
=================================================================== */
#geron .navi li {
width: 100%;
margin: 0;
margin-bottom: 20px;
}

#geron .navi li:last-child {
margin-bottom: 0;
}

#geron .navi li span br {
display: none;
}

/* ===================================================================
area style
=================================================================== */
#area dl.accordionlist {
margin: 0 0 10px 0;
}

#area dl.accordionlist dt {
margin: 0;
}

#area ul.area {
flex-wrap: wrap;
margin-bottom: 20px;
border-left: 1px solid #ccc;
}

#area ul.area li {
width: 50%;
margin: 0;
border-radius:0;
background: white;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}

#area ul.area li a {
display: block;
padding: 10px;
font-size: 16px;
color: #333;
}

/* ===================================================================
adpartners style
=================================================================== */
#adpartners #contents {
max-width: 770px;
margin: 0 auto;
}

#a01,
#a02,
#a03,
#a04 {
margin-top: -45px;
padding-top: 45px;
}

/* ===================================================================
新着記事一覧用 style
=================================================================== */
.blog {
width: 100%;
}

.blog dl {
display: block;
}

.blog dl:last-of-type {
margin-bottom: 30px;
}

.blog dt {
width: 100%;
padding-bottom: 10px;
border: none;
}

.blog dd {
width: 100%;
padding-top: 0;
}

/*	footer
----------------------------------------------------*/
#footer .f_menu li {
margin: 0 5px;
}

#footer .f_menu li a {
padding: 5px;
}

#footer .f_menu li a:hover {
padding-left: 10px;
background: none;
}

#footer .smp_parts {
display: block;
}

}
