@charset "utf-8";

/* 基本設定 ページ全体 */


html {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
}

body {
    overflow-x: hidden;
}

img {
    max-width: 100%;
    vertical-align: middle;
}

* {
    margin: 0;
    padding: 0;
    color: rgb(60, 60, 60);
}

@media(min-width:1200px) {
    * {
        color: rgb(60, 60, 60);
    }
}

.pcbr {}

@media(min-width:1200px) {
    .pcbr {
        display: block;
    }
}

.tabletbr{
    
}
@media(min-width:600px) {
.tabletbr{
    display: block;
}
}
@media(min-width:1200px) {
.tabletbr{
    display: inline;
}
}

.mobilebr {
    display: block;
}

@media(min-width:600px) {
    .mobilebr {
        display: inline;
    }
}

/*header領域*/
header {
    box-sizing: border-box;
    width: 100%;
    line-height: 50px;
    position: relative;
    z-index: 9999;
    background-color: rgb(250, 250, 250);
}

@media(min-width:600px) {
    header {
        line-height: 80px;
    }
}
@media (min-width: 600px) {
    header .container {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
}


@media (min-width: 1200px) {
    header .container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
}

/*ロゴとモバイルメニュー*/
.container .container_small {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}
@media(min-width:1200px) {
    .container .container_small {
        padding-left: 0;
    }
}

.container_small h1 {
    font-size: 16px;
    margin: 0;
    height: 50px;
    padding: 0;
}
@media(min-width:600px) {
    .container_small h1 {
        height: 80px;
        font-size: 24px;
    }
}
@media(min-width:1200px) {
    .container_small h1 {
        font-size: 28px;
        flex: 0 0 300px;
    }
}
.container_small h1 .logo {
    display: inline-block;
    text-decoration: none;
    display: flex;
    align-items: center;
    color: rgb(100,100,100);
}

@media(min-width:1200px) {
    .container_small h1 .logo {
        margin-left: 0;
    }
}
.container_small h1 .logo img{
    width: 30px;
    margin-right: 5px;
}
@media(min-width:600px) {
    .container_small h1 .logo img{
    width: 40px;
}
}

@media(min-width:1200px) {
    .container_small h1 .logo img{
    width: 40px;
}
}

/*モバイルメニュー*/
.container_small .m_menu {
    margin-right: 10px;
    border-radius: 50%;
    background-color: rgb(255,255,255);
        border: none;
    font-size: 20px;
    cursor: pointer;
    display: block;
    width: 40px;
    height: 40px;
    padding: 0;
    margin: 0;
    text-align: center;
}
@media(min-width:600px) {
    .container_small .m_menu {
        width: 50px;
        height: 50px;
    }
}

.container_small .m_menu:hover {
    opacity: 0.8;
}
.container_small .m_menu .fa{
    color: rgb(255,50,50);
    display: block;
}

@media (min-width: 1200px) {
    .container_small .m_menu {
        display: none;
    }
}

/*PCメニュー*/
header .container .pc_menu {
    display: none;
    position: absolute;
    left: 0;
    width: 100%;
    box-sizing: border-box;
}
@media(min-width:600px) {
    header .container .pc_menu {
        
        
    }
}
@media(min-width:1200px) {
    header .container .pc_menu {
        position: relative;
        flex: 0 0 60%;
        display: block !important;
    }
}

.pc_menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    background-color: rgba(60, 60, 60, 0.9);
}
@media(min-width:600px) {
    .pc_menu ul {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
}
}
@media(min-width:1200px) {
    .pc_menu ul {
        width: 100%;
        display: flex;
        background-color: transparent;
        
    }
}
.pc_menu ul li {
    line-height: 2.5;
}
@media(min-width:1200px) {
    .pc_menu ul li{
        border-bottom: 1px solid rgb(150,150,150);
        margin-right: 20px;
        text-align: left;
        width: 100%;
        line-height: 1;
    }
}
.pc_menu ul li a {
    display: block;
    font-size: 16px;
    color: rgb(255,255,255);
    padding-left: 10px;
    text-decoration: none;
    border-bottom: 1px solid rgb(255, 255, 255);
}
@media(min-width:600px) {
    .pc_menu ul li a {
        font-size: 20px;
        padding-top: 10px;
        padding-bottom: 10px;
    }
}
@media(min-width:1200px) {
    .pc_menu ul li a {
        padding-left: 0;
        font-size: 20px;
        color: rgb(100,100,100);
    }
}
.pc_menu ul li:last-child a {
    border-bottom: none;
}

.pc_menu a:hover {}

.pc_menu ul li a .small_li{
    color: rgb(255,255,255);
    font-size: 14px;
}
@media(min-width:600px) {
    .pc_menu ul li a .small_li{
    
}
}
@media(min-width:1200px) {
    .pc_menu ul li a .small_li{
    font-size: 12px;
        color: rgb(100,100,100);
}
}

.pc_menu ul li .red{
    color: rgb(255,50,50);
    border-bottom-color: rgb(255,50,50); 
}




/*PCサブメニュー*/
.pc_submenu {
    width: 100%;
    background-color: rgb(250,250,250);
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}


.pc_submenu ul {
    display: flex;
    justify-content: space-between;
    list-style-type: none;
}
@media(min-width:600px) {
    .pc_submenu ul {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        padding-left: 0;
        padding-right: 0;
    }
}

.pc_submenu ul li {
    line-height: 1.0;
}

.pc_submenu ul li a {
    color: rgb(60,60,60);
    font-size: 10px;
    text-decoration: none;
    display: block;
    padding-top: 5px;
    padding-bottom: 10px;
}
@media(min-width:600px) {
    .pc_submenu ul li a {
        font-size: 12px;
    }
}

@media(min-width:1200px) {
    .pc_submenu {
        height: 40px;
    }

    .pc_submenu ul {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;


        list-style-type: none;
    }

    .pc_submenu ul li {
        line-height: 1;
    }

    .pc_submenu ul li a {
        font-size: 14px;
        padding-top: 15px;



    }
}


/*スクロールで出現ナビゲーション↓*/

.g-nav{
width: 100%;
z-index: 9999;
}

.fixed{
position: fixed;
top: 0;
left: 0;
    z-index: 9999;
}

/*スクロールで出現ナビゲーション↑*/





/*footer*/

footer {
    box-sizing: border-box;
    width: 100%;
    background-color: rgb(245, 245, 245);
    padding-top: 50px;
    font-size: 14px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 50px;
}

footer .container {
    margin-bottom: 20px;
}

@media(min-width:600px) {
    footer .container {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        align-items: flex-start;
    }
}


@media(min-width:1200px) {
    footer .container {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
        display: flex;
    }
}


footer .container .logo {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: bold;
    color: rgb(100,100,100);
}
@media(min-width:600px) {
    footer .container .logo {
        flex: 0 0 40%;
        
    }
}
@media(min-width:1200px) {
    footer .container .logo {
        
        font-size: 24px;
        
    }
}
footer .container .logo img {
    width: 30px;
    margin-right: 5px;
}
@media(min-width:1200px) {
    footer .container .logo img {
        margin-right: 10px;
    }
}

footer .container .logo a{
    text-decoration: none;
    color: rgb(100,100,100);
}


footer .container .footer_l {
    margin-bottom: 20px;
}
@media(min-width:600px) {
    footer .container .footer_l {
        flex: 0 0 60%;

    }
}
@media(min-width:1200px) {
    footer .container .footer_l {
        flex: 0 0 40%;
        padding-top: 15px;
    }
}




.footer_l address {
    font-style: normal;
    line-height: 1.5;
    margin-bottom: 20px;
}

@media(min-width:1200px) {
    .footer_l address {
        
    }
}
.footer_l address p{
    color: rgb(100,100,100);
    margin-bottom: 10px;
}

.footer_l .contact {
    
}
@media(min-width:1200px) {
    .footer_l .contact {
    text-align: left;
}
}


.footer_l .contact a {
    text-decoration: none;
    display: inline-block;
    padding: 5px 20px;
    border: 1px solid rgb(100,100,100);
    border-radius: 20px;
    margin-bottom: 10px;
    color: rgb(100,100,100);
}

@media(min-width:1200px) {
    .footer_l .contact a {
        padding: 10px 15px;
    }
}

.footer_l .contact a:hover {
    color: rgb(255, 255, 255);
    background-color: rgb(0, 0, 0);
    transition: all 0.3s;
}

.footer_l .contact a:hover span {
    color: rgb(255, 255, 255);
    transition: all 0.3s;
}


.footer_s{
    padding-bottom: 10px;
}
@media(min-width:600px) {
    .footer_s{
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
}
@media(min-width:1200px) {
    .footer_s{
        max-width: 1200px;
    }
}

.footer_s small {
    color: rgb(100,100,100);
}
