﻿@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
/* ----------　all　---------- */
.linkStyle:hover{
	opacity: 0.7;
	transition: all 0.5s;
}

html{font-size: 16px;}
body{-webkit-text-size-adjust: 120%;font-size: 16px;}

body {
font-family: 'Roboto', 'Zen Kaku Gothic New', "Noto Sans JP","Hiragino Kaku Gothic ProN", "游ゴシック体", YuGothic, "YuGothic M", meiryo, sans-serif;
font-weight: 500;
}


.font_12{font-size: 14px;}
.font_14{font-size: 16px;}
.font_15{font-size: 17px;}
.font_16{font-size: 18px;}
.font_18{font-size: 20px;}
.font_20{font-size: 22px;}
.font_22{font-size: 24px;}
.font_24{font-size: 26px;}
.font_26{font-size: 28px;}
.font_28{font-size: 30px;}
.font_30{font-size: 32px;}
.font_100per{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}

#fakeloader {
    background-color: #f7f0ed;
}

#fakeloader .fl {
    max-width: 350px;
}

/* nav */


.link-box {
    left: 20px;
    bottom: 10px;
    z-index: 5;
}

.link-box a img {
    width: 40px;
    margin-bottom: 10px;
}

.link-box a {
    padding: 25px 10px;
    font-size: 20px;
    line-height: 1.8;
    border-radius: 15px;
}

.is-hidden {
  visibility: hidden;
  opacity: 0;
}


/* footer */

.f_contact_box h4 {
    line-height: 1.5;
}

.f_sitemap_inner {
    justify-content: flex-start;
}

.f_sitemap_inner li {
    width: 25%;
}

/* ----------　TOP　---------- */

/* main-img */

#main_img {
    height: 100vh;
    background-image: url(/Dup/img/main-img.png);
    background-repeat: no-repeat;
    background-size: 80%;
    background-position: right center;
}

.copy-box {
    top: 40%;
    left: 0;
}

/* top */

.topTxt1 {
    border-radius: 67px;
    padding: 15px 30px 10px;
}

#con1 {
    background-image: url(Dup/img/keitora.svg),url(Dup/img/supana.svg);
    background-repeat: no-repeat;
    background-size: 35%, 20%;
    background-position: center right, center left;
}

.con2-link a {
    border-radius: 15px;
}

#con3 .box .img {
    border-radius: 0px;
    max-width: 350px;
    min-height: 300px;
    margin: auto;
}

#con3 .box .icon {
    margin-top: 20px;
    border-radius: 15px;
}

/* top-cms */

.c-btn {
    border-radius: 15px;
}

.link_type3{padding-bottom: 50px;}
.link_type3 .link_img1 {z-index: 1;}
.link_type3 .cate_box a:hover .link_img1 img {transform: translate(-50%, -50%) scale(1.05,1.05);}
.link_type3 .link_title1 {
    left: 1px;
    bottom: 1px;
    width: calc(100% - 2px);
    box-sizing: border-box;
}
.link_type3 .cate_box a .link_title1 {transition-timing-function: cubic-bezier(.78,.09,.27,1.36);}
.link_type3 .cate_box a:hover .link_title1 {bottom: -60px;}

/* ----------　下層ページ　---------- */

.cate_list li a {
    transition: 0.3s;
}

.cate_list li a:hover {
    color: #ffffff;
    background-color: #129fd6;
}

.v_type3 .cate_box{border: 1px solid #78cef0;}
.v_type3 .box_title1{color: #129fd6;}

/* 会社情報 */
/* お問い合わせ */

.tel_wrap {
    row-gap: 50px;
    justify-content: space-evenly;
}

/* プライバシーポリシー */
/* サイトマップ */


/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){
    
.link-box a {
    padding: 15px 20px;
}

#main_img {
    height: 70vh;
    background-size: 100%;
}

.copy-box {
    top: 60%;
    width: 80%!important;
}
    
.font_12_tb{font-size: 14px;}
.font_14_tb{font-size: 16px;}
.font_16_tb{font-size: 18px;}
.font_18_tb{font-size: 20px;}
.font_20_tb{font-size: 22px;}
.font_22_tb{font-size: 24px;}
.font_24_tb{font-size: 26px;}
.font_26_tb{font-size: 28px;}
.font_28_tb{font-size: 30px;}
.font_30_tb{font-size: 32px;}
.font_100per_tb{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up_tb{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up_tb{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up_tb{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up_tb{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up_tb{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw_tb{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}

.f_sitemap_inner li {
    width: 30%;
}

#con1 {
    background-repeat: no-repeat;
    background-size: 50%, 25%;
    background-position: 95% 95%, 10% 30%;
}
    
.link_type3{padding-bottom: 0;}
    
.pagetop {
    z-index: 5;
}
    
}

/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){
    
#fakeloader .fl {
    max-width: 250px;
}

.f_contact_box h4 {
    font-size: 20px;
}

.f_contact_box {
    width: 100%;
    left: 0;
    right: 0;
    margin: auto;
}

.f_contact_box {
    padding: 60px 15px;
}

.link-box a {
    padding: 20px 20px;
    border-radius: 50%;
}

.link-box a img {
    margin-bottom: 0;
}
    
.font_12_sp{font-size: 14px;}
.font_14_sp{font-size: 16px;}
.font_16_sp{font-size: 18px;}
.font_18_sp{font-size: 20px;}
.font_20_sp{font-size: 22px;}
.font_22_sp{font-size: 24px;}
.font_24_sp{font-size: 26px;}
.font_26_sp{font-size: 28px;}
.font_28_sp{font-size: 30px;}
.font_30_sp{font-size: 32px;}
.font_100per_sp{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up_sp{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up_sp{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up_sp{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up_sp{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up_sp{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw_sp{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}

#main_img {
    height: 90vh;
    padding-top: 50px;
    background-image: url(/Dup/img/main-img-sp.png);
    background-size: 100%;
    background-position:center;
}

.copy-box {
    display: none;
}

.topTxt1 {
    display: block;
    border-radius: 70px;
    padding: 15px 20px 10px;
}

#con1 {
    background-size: 80%, 55%;
    background-position: 185% 95%, 5% 20%;
}
    
#con3 .box .img {
    min-height: 250px;
    margin: auto;
}

.copy {
    padding-bottom: 70px;
}

.pagetop i {
    transform: translateX(1px);
}

.pagetitle h2 {
    font-size: 25px;
}
    
}