﻿@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500;600;700&display=swap');

/* ----------　all　---------- */
.linkStyle{
	color:#3a6998;
	text-decoration: underline;
}
.linkStyle:hover{
	color:#3a6998;
	opacity: 0.7;
	transition: all 0.5s;
}

html{font-size: 16px;}
body{-webkit-text-size-adjust: 120%;font-size: 16px;}

.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);
}



/* nav */



/* footer */

.footer_tel {
    display: none;
}

#bottom_tel a {
    background-color: #FC5D37;
    color: #ffffff;
    transition: 0.3s;
}

#bottom_tel a:hover {
    opacity: 0.7;
}

#page_top{
    background-color: #3A6998;
}

/* ----------　TOP　---------- */

/* main-img */

.main-copy {
    width: 65%;
    top: 3%;
    left: 3%;
    transform: rotate(-5deg);
}

.main-bt {
    left: 15%;
    bottom: 5%;
}

.main-bt-r a {
    padding: 10px 20px;
    background-color: #FC5D37;
}

.main-bt-r a:hover {
    background-color: #aae1bf;
}


/* top */

#top_contents1 .info_title {
    font-family: 'Caveat', cursive;
}

.con1_txt_wrap {
    position: relative;
}

.con1_txt_wrap:before {
    content: "";
    width: 150px;
    height: 150px;
    position: absolute;
    bottom: -150px;
    right: 70px;
    background-image: url('/Dup/img/ilu1.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
}

.con_title {
    position: relative;
 background: #ffffff;
  box-shadow: 0px 0px 0px 10px #ffffff;
  border: dashed 2px #b2cbe4;
  padding: 0.2em 0.5em;
  z-index: 0;
  margin-bottom: 40px;
}

.con_title:before {
    content: "";
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    position: absolute;
    top: -12px;
    left: -12px;
    border: solid 2px #b2cbe4;
    z-index: -1;
}

h2.con2_item {
    color: #3a6998;
    position: absolute;
    top: -65px;
    font-family: 'Caveat', cursive;
    left: 0;
    right: 0;
    margin: auto;
}

.con2_bg {
    background-color: #3a6998;
    background-image: url(Dup/img/nami.png),url(Dup/img/nami.png),url(Dup/img/ilu2.png),url(Dup/img/ilu3.png);
    background-repeat: no-repeat;
    background-size: contain, contain, 80px, 120px;
    background-position: -5% 25%,100% 25%, 85% 10%, 10% 95%;
}

#top_contents2 .con_title {
    background-color: transparent;
    border: none;
    box-shadow: none;
    margin-bottom: 20px;
}

#top_contents2 .con_title:before {
    display: none;
}

#top_contents2 .con_title span:before {
    content: "";
    width: 25px;
    height: 25px;
    position: absolute;
    top: -5px;
    right: -15px;
    background-image: url(/Dup/img/brst.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.marker {
    display: inline-block;
    background:linear-gradient(transparent 75%, #aae1bf 75%);
}

.con3_bg:before {
    content: "";
    width: 100%;
    height: 100px;
    position: absolute;
    top: -99px;
    left: 0;
    background-image: url(/Dup/img/hasen1.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center bottom;
}

.con3_bg:after {
    content: "";
    width: 100%;
    height: 100px;
    position: absolute;
    bottom: -99px;
    left: 0;
    background-image: url(/Dup/img/hasen2.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
}

#top_contents3 .con3_no {
    font-size: 60px; 
    font-family: 'Caveat', cursive;
    color: #b2cbe4;
}

#top_contents3 .con_before {
    display: none;
}

/* top-cms */

.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: -47px;}

/* ----------　下層ページ　---------- */

#page_title .sub_title {
    color: #b2cbe4;
    font-family: 'Caveat', cursive;
    font-size: 30px;
}
#page_title .title_wrap{
    margin-top: 20px;
}

.cate_list li a {
    color: #333333;
}

/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */


/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){

.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);
}

.main-bt-r a {
    padding: 10px 10px;
}

#footer_info .info_title {
    position: initial;
    margin-bottom: 20px;
}

#main_img {
    height: 70vh;
    background-position: 80% 50%;
}

.main-copy {
    width: 75%;
    top: 10%;
    left: 1%;
    transform: rotate(-10deg);
}

.main-bt {
    left: 0%;
    bottom: 5%;
    width: 75%;
}

.con1_txt_wrap:before {
    width: 120px;
    height: 120px;
    bottom: -90px;
    right: 30px;
}

.con2_bg {
    background-image: url(Dup/img/nami.png);
    background-size: contain;
    background-position: 100% 0%;
}

.con2_txt_wrap {
    background-color: rgba(58,105,152,0.5);
    background-image:url(Dup/img/ilu2.png),url(Dup/img/ilu3.png);
    background-size: 80px,100px;
    background-position:90% 5%, 5% 100%;
    background-repeat: no-repeat;
}
    
.link_type3{padding-bottom: 0;}
    
}

/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){
    
.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);
}
    
#header_sns{
    padding: 0;
}
    
.logo_wrap {
    width: 90px;
}

#header.active .logo_wrap {
    width: 100px;
}

.main-copy {
    width: 80%;
    top: 5%;
    left: 3%;
    transform: rotate(-10deg);
}

.main-bt {
    left: 0%;
    bottom: 15%;
    width: 100%;
}

.main-bt-r {
    width: 65%!important;
}

.main-bt-r p {
    text-shadow: 0 0 5px rgba(255,255,255,0.5);
}

h2.con2_item {
    top: -47px;
}
.con1_txt_wrap:before {
    width: 90px;
    height: 90px;
    bottom: -65px;
    right: -5px;
}
.con2_bg {
    background-size: cover;
    background-position: 110% 0%;
}

.con_title {
    position: relative;
    background: #ffffff;
    box-shadow: 0px 0px 0px 10px #ffffff;
    border: dashed 2px #b2cbe4;
    padding: 0.2em 0.2em;
    z-index: 0;
    margin-bottom: 40px;
}

.con2_txt_wrap {
    background-color: rgba(58,105,152,0.5);
    background-image: url(Dup/img/ilu2.png),url(Dup/img/ilu3.png);
    background-size: 65px,100px;
    background-position: 90% 5%, 5% 100%;
    background-repeat: no-repeat;
}
    
}