@charset "UTF-8";
/*
Theme Name:HIKARI CASTING・タレント明朗会計
Theme URI:https://expert.hikari-casting.com/
Description:HIKARI CASTING・タレント明朗会計専用テンプレートです。
Author:koshimizu ayako
Version:1.0 231023
*/

/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
img{vertical-align: bottom;}


/* iphone リセット*/
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input, select, textarea{
    border: none;
    outline: none;
}

iframe{
    width: 100%;
    height: 100%;
}

*{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

@media (min-width: 769px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}

/********* base *********/

html{font-size: 62.5%; /* sets the base font to 10px for easier math */}

body{
	color: #3E3E3E;
	font-size: 18px;
	font-size: 1.8rem;
    line-height: 1.7;    
}

body, table, input, textarea, select, option, h1, h2, h3, h4, h5, h6{
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

a{text-decoration: none;
    color: #6C5F48;}
a:hover{opacity: 0.8;}

img{max-width: 100%;}

.sp{display: none!important;}


@media screen and (max-width: 768px){
    body{font-size: 1.6rem;}
    img{
        max-width: 100%;    
        width: 100%;
        vertical-align: bottom;}
	.sp{display: block!important;}
	.pc{display: none!important;}
}

.findBtn,
.entryBtn,
.contactBtn,
.lineBtn{    
    width: 278px;
    margin: 0 10px;
}

.findBtn a,
.entryBtn a,
.contactBtn a,
.lineBtn a{
    width: 100%; 
    padding: 6px 0 5px; 
    color: #6C5F47;    
    border-radius: 50px;
    font-size: 1.8rem;
    font-weight: 700;
    font-style: normal;    
    display: flex;
    justify-content: center;    
}
.findBtn a{
    background: #FCD1C6;
}
.entryBtn a{
    background: #C7E3E9;
}
.contactBtn a{
    background: #99FFB3;    
}
.lineBtn a{
    background: #43C606;  
    color: #fff!important;
}

.findBtn a:after,
.entryBtn a:after,
.contactBtn a:after,
.lineBtn a:after{
    content: '';
    background: url(img/icon_arrow.png)no-repeat top left;
    width: 31px;
    height: 6px;
    margin-left: 10px;
    display: inline-block;
    position: relative;    
    top: 10px;
}
.lineBtn a:after{
    filter: invert(100%) sepia(0%) saturate(7488%) hue-rotate(340deg) brightness(91%) contrast(109%);
}

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

/********* header *********/
header{
    background: url(img/header_bg.webp)no-repeat bottom right;
    position: relative;
    z-index: 3;
}

header #catchphrase {
    padding-top: 2px;
    background: #698C00;
}

header #catchphrase > p{
    width: 96%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 2px 0 5px;
    color: #fff;
    font-weight: bold;
    line-height: 1;
}

#header-inner{
    width: 96%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 18px 10px 35px;  
    display: flex;
    justify-content: space-between;
    align-items: center;    
}

header h1.logo{
    max-width: 330px;   
}

header .btn {
    margin-top: -34px;
    display: flex;
    justify-content: flex-end;
}
header .btn > div{
    width: 280px;
}
header .btn > div a{
    width: 100%;
    display: block;
}

header .btn > div.tellBtn{
    margin-right: 10px;    
    border: 1px solid #010101; 
}

header .btn > div.tellBtn a{
    width: 100%;
    padding: 0 0 0 18px; 
    background: #fff;
    font-size: 1.6rem;
    display: flex;
    align-items: center;
}
header .btn > div.tellBtn a span{
    width: 230px;
    display: block;
    line-height: 1;
    text-align: center;
    position: relative;
}
header .btn > div.tellBtn a span:before{
    content: '';
    width: 1px;
    height: 34px;
    background: #000;
    display: block;
    position: absolute;
    top: 6px;
    left: 17px;
}

header .btn > div.tellBtn a span.number {
    font-size: 2.8rem;
    color: #FF8000;
    font-family: din-condensed, sans-serif;
    display: block;
    letter-spacing: 1px;    
}

header .btn > div.tellBtn a:before{
    content: '';
    background: url(img/icon_tell.webp)no-repeat;
    background-size: 100%;
    width: 28px;
    height: 28px;
    display: block;
    filter: invert(53%) sepia(92%) saturate(2210%) hue-rotate(360deg) brightness(101%) contrast(109%);
}

header .btn > div.mailBtn{
    width: 280px;
    border: 1px solid #fff;
}
header .btn > div.mailBtn a{
    width: 100%;
    padding: 8px 0 7px 10px;
    background: #FF8000;
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    font-weight: 600;
    color: #fff;
}
header .btn > div.mailBtn a:before{
    content: '';
    background: url(img/icon_mail.webp)no-repeat;
    background-size: 100%;
    width: 30px;
    height: 26px;
    display: block;
    filter: invert(99%) sepia(99%) saturate(2%) hue-rotate(268deg) brightness(108%) contrast(100%);
}
header .btn > div.mailBtn a:after{
    content: '';
    background: url(img/icon_arrow.webp)no-repeat;
    background-size: 100%;
    width: 9px;
    height: 18px;
    display: block;
    filter: invert(99%) sepia(99%) saturate(2%) hue-rotate(268deg) brightness(108%) contrast(100%);
}
header .btn > div.mailBtn span{
    width: 220px;
    display: block;
    text-align: center;
}

#menu-nav.menu,
#menu-nav-2.menu{
    margin: 24px 0 0;
    display: flex;    
}

#menu-nav-1.menu{
    display: block;
}

#menu-nav.menu li,
#menu-nav-1.menu li,
#menu-nav-2.menu li {
    margin: 0 17px;
    /* text-align: center; */
    font-size: 1.0rem;
    position: relative;
    letter-spacing: -1px;
}
#menu-nav.menu li span,
#menu-nav-1.menu li span,
#menu-nav-2.menu li span{
    padding-left: 23px;
    margin-bottom: 6px;
    display: block;
    font-size: 2.0rem;
    font-family: nimbus-sans, sans-serif;
    font-weight: 600;
    color: #698C00;
    line-height: 1;
    letter-spacing: 0;    
}
#menu-nav-2.menu li span{
    color: #3E3E3E;
}


#menu-nav-1.menu li span{
    padding-left: 0;    
}

#menu-nav.menu li.menu-item:before,
#menu-nav-2.menu li.menu-item:before{
    content: '';
    display: inline-block;
    width: 13px;
    height: 13px;
    border: 1px solid #010101;
    position: absolute;
    top: 8px;
}

#menu-nav.menu li.menu-item:hover:after,
#menu-nav-1.menu li.menu-item:hover:after,
#menu-nav-2.menu li.menu-item:hover:after{
    content: '✓';
    font-family: '小塚ゴシック Pr6N', sans-serif;
    font-size: 3.0rem;
    line-height: 1;
    position: absolute;
    top: 0px;
    left: -7px;
}
#menu-nav.menu li.menu-item:hover:after{
    color: #FF8000;
}
#menu-nav-2.menu li.menu-item:hover:after{
    color: #FF8000;
}

body#service li.menu-item-448:after,
body#flow li.menu-item-449:after,
.post-type-archive-post li.menu-item-451:after,
.post-type-archive-topix li.menu-item-450:after,
body#faq li.menu-item-452:after{
    content: '✓';
    font-family: '小塚ゴシック Pr6N', sans-serif;
    font-size: 3.0rem;
    line-height: 1;
    position: absolute;
    top: 0px;
    left: -7px;
    color: #FF8000;    
}

#menu-nav-2.menu li.menu-item:before{
    border: 1px solid #3E3E3E;
}

body#service #menu-nav-2.menu li.menu-item-233:after,
body#guide #menu-nav-2.menu li.menu-item-235:after,
.post-type-archive-post #menu-nav-2.menu li.menu-item-237:after,
.post-type-archive-topix #menu-nav-2.menu li.menu-item-236:after,
body#faq #menu-nav-2.menu li.menu-item-238:after{
    color: #FF8000;   
}

main{
    position: relative;
    z-index: 1;}

@media screen and (max-width:768px){
    header h1.logo {
        margin-top: 0;
        max-width: 180px;
        top: 0;
    }
    header #catchphrase > p{
        font-size: 1.1rem;
    }
    #header-inner{
        padding: 10px 10px 9px;    
    }
    
    #menu-nav.menu li{
        width: 40%;
        margin: 0 10px;
    }
    
    body#service li.menu-item-233:after, body#guide li.menu-item-235:after, .post-type-archive-post li.menu-item-237:after, .post-type-archive-topix li.menu-item-236:after, body#faq li.menu-item-238:after{
        display: none;
    }
}


/********* footer *********/	
footer {
    margin-top: 79px;    
    padding: 88px 84px;    
    background: #C7C7AB;
}

footer .inner{
    margin: 0 auto;
}

footer h1.logo {
    max-width: 330px;
    margin: 0 auto;
    text-align: center;
}

footer #menu-nav-2.menu {
    margin: 39px 0 75px;
    justify-content: center;
}
footer .menu li a{
    color: #3E3E3E;
}

footer #menu-f-nav.menu{
    display: flex;
    justify-content: center;
}
footer #menu-f-nav.menu li{
    font-size: 1.8rem;
    margin: 0;
    padding: 0px 30px;
    border-right: 1px solid #3E3E3E ;
    letter-spacing: 4px;
    line-height: 1;
}
footer #menu-f-nav.menu li:last-child{
    border-right: none;
}


div#copy {
    padding: 12px 0 15px;
    background: #3B3F42;
    color: #B5B5B5;
    text-align: center;
    font-size: 1.4rem;
}

@media screen and (max-width:768px){
    footer{
        margin-top: 48px;
        padding: 48px 10px 18px;        
    }
    footer #menu-nav-2.menu{
        flex-wrap: wrap;
        margin: 35px 0 46px;    
        justify-content: space-between;
    }

    footer h1.logo{
        width: 80%;
        max-width: 240px;
    }
    
    footer #menu-nav-2.menu li{
        width: 40%;
        margin: 0 10px;    
    }
    
    footer #menu-f-nav.menu li{
        padding: 0px 10px;    
        font-size: 1.6rem;
        letter-spacing: 1px;
    }
    
    div#copy{
        padding: 12px 0 15px;   
        font-size: 1.2rem;
    }
}


/********* spNavi *********/
@media screen and (max-width:768px) {
    #wrapper nav {
        position: fixed;
        top: 0;
        right: -300px;
        width: 300px;
        height: 100%;
        padding-top: 50px;
        background:#333;
        font-size: 16px;
        box-sizing: border-box;
        z-index: 5;
    }
    #wrapper nav ul li {
        display: block;
        padding: 25px 28px 0;
        line-height: 1;
    }
    #wrapper nav ul li a {
        text-decoration: none;
        color: #fff;
        font-size: 1.4rem;    
    }
    #wrapper .btn-gnavi {
    /*    position: fixed; */
        position: relative;
        top: 0;
        right: 3px;
        width: 33px;
        height: 32px;
        z-index: 10;
        box-sizing: border-box;
        cursor: pointer;
        -webkit-transition: all 400ms;
        transition: all 400ms;
        display: block;
    }
    #wrapper .btn-gnavi span {
        position: absolute;
        width: 30px;
        height: 4px;
        background: #666;
        border-radius: 10px;
        -webkit-transition: all 400ms;
        transition: all 400ms
    }
    #wrapper .btn-gnavi span:nth-child(1) {
        top: 0
    }
    #wrapper .btn-gnavi span:nth-child(2) {
        top: 10px
    }
    #wrapper .btn-gnavi span:nth-child(3) {
        top: 20px
    }
    #wrapper .btn-gnavi.open span {
        background: #fff
    }
    #wrapper .btn-gnavi.open span {
        width: 24px;
    }
    #wrapper .contents section p {
        position: absolute;
        top: 50%;
        width: 30%;
        line-height: 1.4;
        font-size: 20px;
        color: #fff;
    }
    #wrapper .contents section:nth-child(odd) p {
        left: 10%
    }
    #wrapper .contents section:nth-child(even) p {
        right: 10%
    }
    
    header #header-inner .btn{
        margin-top: 30px;
        display: block;
    }
    header #header-inner .btn > div{
        width: 230px;
        margin: 0 28px 25px;
    }
    
    #wrapper nav ul#menu-nav-1{
        display: block;    
    }
    

}
