﻿/*--------link_font--------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600&display=swap');

.menu-box,.menu_list,#header-nav,#top_contact_box, #top_contact_box,.en_font, h1, h2, h3, h4, h5, h6, .sns_title, .con_no, #footer_nav,.copyright{
    font-family: 'Noto Sans JP', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/* ---------------------------------　ボディ　----------------------------------------- */

/* --------------------　フォント　------------------- */
#top_contents1 h2,#top_contents2 h2,#top_cms h2,.title_box h2,.gyoumu_box h2{
        font-size: calc(1rem + 12px);
}

#top_contents1 h2 {
    font-size: calc(1rem + 16px);
}

.font_2dw{
    font-size: calc(1rem + 2px)!important;
}

/* color -----------------------------------------------------------------------------*/
.border_color4 {
    border-color: #555555;
}


body#body {
    font-size: 18px;
}

/* ----------　linkStyle　▼---------- */
.linkStyle{
    border-bottom:solid 1px;
}

.linkStyle:hover{
	opacity: 0.7;
	transition: all 0.5s;
}
/* ----------　linkStyle　▲---------- */
.overlay-menu .tel_bt a i {
    font-size: -webkit-calc(1rem + 8px);
    font-size: calc(1rem + 8px);
    top: 60%;
}
/* ---------------------------------------------　TOP　---------------------------------------- */
#loading_logo {
    width: 80%;
    max-width: 200px;
}

#main_img {
        position: relative;
        max-height: 800px;
}

#main_img .main {
        width: 100%;
        height: auto;
}

#main_img .catch {
    z-index: 3;
    position: absolute;
    content: "";
    top: 27%;
    left: 48%;
    width: 45%;
}

/* ----------　header　▼---------- */
#header #logo img {
    width: 100%!important;
}

#logo {
    height: 115px;
}



/* ----------　header　▲---------- */
.sns_links li {
    height: 20px !important;
    width: 50px;
}

.sns_icon{
    width: 100%;
}

.bnr {
    right: 100px;
    bottom: 30px;
    max-width: 300px;
    z-index: 3;
}

.bnr:hover{
    transition: 0.5s;
    opacity: 0.5;
}

.bnr a {
    display: block;
    transition: 0.5s;
}



#top_pc_nav ul{
    background-color: #ffffff94;
    max-width: 800px;
    margin: auto;padding: 15px;
    border-radius: 5px;
}

 #top_pc_nav a {
     color: #434343;
 }

#top_contact_box .btn_box p {
        font-size: 1rem;
}

#top_contact_box .tel_bt, #top_contact_box .con_bt {
        padding: 0px;
}

#top_contact_box .tel_bt a, #top_contact_box .con_bt a {
        padding: 8px 10px;
}

.cms_2-g .box_txt1{
    font-size: 17px;
}

/*span.txt_center.posi_rel {*/
/*    right: -3%;*/
/*}*/

/*span.posi_rel {*/
/*    right: -4%;*/
/*}*/

.con2 .title{
    font-weight: bold;
    font-size: 30px;
}

.con2 .box_wrap .img {
    border-radius: 500px;
}

.con2 .box_wrap .icon {
    position: relative;
    z-index: 1;
    margin-top: -50px;
}

/* ----------　pc_nav　---------- */


.menu-box .menu_list li a{
    display: inline-block;
    font-size:120%;
    text-decoration:none;
    transition: .3s;
    -webkit-transform: scale(1);
    transform: scale(1);
}

.menu-box .menu_list li a:hover{
    -webkit-transform: scale(1.1);
     transform: scale(1.1);
}

#footer .footer_box p {
    color: #fff;
}


.more a {
    color: #ff9e03;
    padding: 15px;
    border: solid 2px;
}

.more a:hover {
    border-color: transparent;
    background-color: #ff9e03;
    font-weight: bold;
    color: #fff;
}


/* ----------　banner　▼---------- */
#banner {
    position: fixed;
    left: 15px;
    bottom: 15px;
    z-index: 99;
    width: 300px;
}

#banner:hover{
    transition: 0.3s;
    opacity:0.8;
}
/* ----------　banner　▲---------- */
#top_contact_box .con_bt a i {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: initial;
    content: "\f075" !important;
}

#footer .footer_box p, #footer .footer_box a {
    font-weight: 900;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#main_img {
    position: relative;
    height: auto;
    min-height: auto;
    height: auto!important;
    width: 100%;
}

#main_img #main_img_border {
    top: 20px;
    height: calc(100% - 40px) !important;
}

}

/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
#main_img #main_img_border {
    top: 10px;
    height: calc(100% - 20px) !important;
    width: calc(100% - 20px) !important;
    left: 10px;
}
}

/* -------------------　新着情報　----------------- */
.pager li a {
    color: #ff9e03;
    border: solid 2px;
}

#cms_1-d .title_box::before {
    border-right: solid 20px var(--color4);
}

#cms_1-d .title_box::after {
    border-left: solid 20px var(--color4);
}

/* ------------------------------------------　下層ページ　------------------------------------- */



/* ----------　会社情報　---------- */

/* ----------　お問い合わせ　---------- */
#contact_tel a {
    border-color: var(--color1);
}

/* ----------　プライバシーポリシー ---------- */
#google_privacy{
    max-width: 854px !important;
}

/* ----------　サイトマップ　---------- */
#page10 .sitemap_wrap .btn a :hover{
    background-color: #ffd18f;
}

.btn a .txt{z-index:0;}

@media all and (-ms-high-contrast: none){
  .sample{

  }
}

/*-------------------------------------------------------タブレット-------------------------------------------------------*/
@media screen and (max-width: 768px){
#main_img .catch {
    top: 50%;
    left: 45%;
    width: 53%;
}

#logo h1.logo {
    top: 45%;
    left: 20px;
    transform: translateY(-50%);
    max-width: 120px;
}

.overlay nav {
    background-color: var(--white);
    height: 100%;
    top: 50%;
    left: 0;
    right: 0;
}

.overlay-menu .tel_bt a i {
    top: 50%;
}

.bnr {
        right: 50%;
        bottom: 50px;
        transform: translate(50%, 0px);
}

#page7 .box_title1{
        padding-right:0;
}

#top_contents1 p{
        text-align: left;
}

#top_contents2{
            padding-top: 30px;
}

#banner {
    left: 0;
    right: 0;
    margin: auto;
    width: 240px;
}

#footer_nav li {
    padding-right: 25px;
    padding-left: 25px;
}

}

/*-------------------------------------------------------スマホ-------------------------------------------------------*/
@media screen and (max-width: 667px){
#loading_logo {
    width: 15%;
    max-width: 200px;
}

#logo h1.logo{
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    max-width: 90px;
}

#main_img .catch {
    top: 62%;
    left: 15%;
    width: 80%;
}

.font_2dw {
    font-size: calc(1rem + -2px)!important;
}

/*#top_contents2 .fadein_right.start {*/
/*    transform: translateY(-40px);*/
/*}*/

.overlay nav {
    height: 100%;
    top: 52%;
}

.con2 .box_wrap .img {
    max-width: 300px;
    margin: 0 auto;
    border-radius: 20px;
}

.con2 .title {
    letter-spacing: 0;
    font-size: 18px;
}

#logo {
    height: 78px;
}

/* CMSマージンパディング・文字の調整 */
 
#page8 .contact_tel p.d_inline_b{
        font-size: 18px;
}

#page9 h3 {
    letter-spacing: 0;
    font-size: 18px;
}

#page9 .pd_5per_tb{
        padding: 5% 1%;
}

.bnr{
        bottom: 0px;
}

#footer {
        padding-top: 30px;
}

#footer {
    padding-bottom: 50px;
}

#cms_6-c .cate_box{
            margin-bottom: 50px;
}

#cms_6-c .arrow{
        bottom: -50px;
        height: 50px;
}

.overlay{
        top: 77px;
}

.overlay .menu-box .menu_list li a {
    font-size: 14px;
    padding-top: 8px;
    padding-bottom: 10px;
}

#top_contents1 h2, #top_contents2 h2, #top_cms h2, .title_box h2, .gyoumu_box h2 {
    font-size: calc(1rem + 2px);
    letter-spacing: 0;
}

#top_contents1 h2{
    font-size: calc(1rem + 6px);
}

a.txt_color_nomal.hvr_opa05.motion03s.d_block.pd_30px.width_300-max.border_color2.border_so1 {
        font-size: 15px;
}

}


@media screen and (max-width: 768px){
.tb_sns_wrap .sns_links_tb li{
	margin: 0 5%;
	height: 30px!important;
	width: 75px !important;
}
}

/*-------------------------------------------------------スマホ-------------------------------------------------------*/
@media screen and (max-width: 667px){
.tb_sns_wrap .sns_links_tb li{
	margin: 0 5%;
	height: 20px !important;
	width: 90px !important;
}
}