﻿@font-face {
font-family: "irohamaru";
  src: url("./Dup/img/irohamaru.ttf") format("ttf"),url("./Dup/img/irohamaru.eot") format("eot"),url("./Dup/img/irohamaru.woff") format("woff"),url("./Dup/img/irohamaru.woff2") format("woff2");
}
.font1{font-family: "irohamaru","sans-serif";}

/*--------------------------------
2px大きく
--------------------------------*/
html{font-size: 18px;}
body{-webkit-text-size-adjust: 120%;font-size: 18px;}

.font_14{font-size: 16px;}
.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);
}

@media  screen and (max-width: 768px){
.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);
}
}

@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);
}
}
/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
.top_header,#intro p span,#contents1 .bg_white,#contents2 .bg_white{position: relative;}
/*リピートなし*/
.top_header:before,#intro p span:before,#contents1 .bg_white:before,#contents2 .bg_white:before{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}

.top_header:before{
background-image: url(./Dup/img/obj4.png);
width: 300px;
height: 285px;
top: -70px;
right: 50px;
z-index: 1;
}
#intro p span:before{
background-image: url(./Dup/img/obj1.png);
width: 13vw;
height: 15vw;
bottom: -200px;
left: -255px;
}
#contents1 .bg_white:before{
background-image: url(./Dup/img/obj2.png);
width: 13vw;
height: 13vw;
top: 65px;
right: -120px;
}
#contents2 .bg_white:before{
background-image: url(./Dup/img/obj3.png);
width: 13vw;
height: 12vw;
bottom: -110px;
left: -100px;
}
/*--------------------------------
全体
--------------------------------*/
body{background-color:#fbf9f8;}
#main_menu .logo img,#sc_menu .logo img{max-width: 200px;}
#main_menu li:hover, #main_menu li.on, #sc_menu li:hover, #sc_menu li.on{transform: translateY(-18px);}
#footer .logo img.width_500-max{max-width: 300px;}
#footer_menu{background-color: transparent;}
/*--------------------------------
TOP
--------------------------------*/
#main_img .txt_color1{color:#bed7f0;}
#top_cms .top_cms_title{border-width: 3px;}
/*--------------------------------
下層
--------------------------------*/
.circle{position: relative;padding-left: 20px;}
.circle:before,.circle:after{
content: "";
display: block;
background-size: cover;
position: absolute;
border-radius: 50%;
z-index: -1;
}
.circle:before{
background-color: rgba(115,185,235,0.3);
width: 40px;
height: 40px;
top: -5px;
left: -10px;
}
.circle:after{
background-color: rgba(125,205,150,0.3);
width: 30px;
height: 30px;
TOP: 15px;
left: 10px;
}

/* 5-b Q削除 */
#cms_5-b.page4 .cate_box .open_bt .box_title1::before, .cms_5-b.page4 .cate_box .open_bt .box_title1::before{display: none;}
#cms_5-b.page4 .cate_box .open_bt .box_title1, .cms_5-b.page4 .cate_box .open_bt .box_title1{margin-left: 70px;}


/*IEのみ*/
@media all and (-ms-high-contrast: none) {
#contact_tel a{padding-bottom: 24px;}
#tel_txt h3{padding-bottom: 0;}
#tel_txt p{padding-bottom: 15px;}
.head_banner a{padding-bottom: 5px;}
}



@media  screen and (max-width: 1280px){
#intro p span:before {
width: 14vw;
height: 16vw;
bottom: -175px;
left: -160px;
}
#contents1 .bg_white:before{
width: 14vw;
height: 14vw;
right: -110px;
}
#contents2 .bg_white:before {
width: 14vw;
height: 13vw;
bottom: -30px;
}
}
@media  screen and (max-width: 1000px){
#intro p span:before {
bottom: -150px;
left: -100px;
}
}
/*タブレット用（768px以下）
--------------------------------------------------------------------------*/
@media  screen and (max-width: 768px){
header{padding: 0;}
.top_header:before{display: none;}
#sp_nav .logo img.width_300-max{max-width: 170px;}


#intro > div{padding-left: 100px;padding-right: 100px;}
#intro p span:before{
width: 18vw;
height: 21vw;
bottom: -120px;
left: -130px;
}
#contents1 .bg_white:before{
width: 21vw;
height: 21vw;
top: 50px;
right: -50px;
}
#contents2 .bg_white:before{
width: 21vw;
height: 19vw;
bottom: -60px;
left: -30px;
}

.cate_list a{padding: 15px;padding-bottom: 10px;}
.cate_list li span{
max-width: 270px;
box-sizing: border-box;
display: inline-block;
line-height: 1;
}
}

/*スマホ用（667px以下）
--------------------------------------------------------------------------*/
@media  screen and (max-width: 667px){
#main_nav{top: 30px;}
#sp_nav{padding: 0 10px;}
#sp_nav .logo img.width_300-max{max-width: 130px;}


#intro > div{padding-left: 10px;padding-right: 10px;}
#intro p span:before{
width: 22vw;
height: 26vw;
bottom: -100px;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}
#contents1 .bg_white:before{
width: 30vw;
height: 30vw;
top: auto;
bottom: -90px;
right: 30px;
}
#contents2 .bg_white:before{
width: 30vw;
height: 27vw;
bottom: -60px;
left: 20px;
}

.cate_list li{margin: 20px 0;}
}

/*--------------------------自動リンク--------------------------*/
/* color */
.linkStyle{color: #23B473; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #23B473;}
.txt_white .linkStyle{color: white;}
.txt_red .linkStyle{color: red;}
.bg_color1 .linkStyle{color: #fff;}
.bg_color2 .linkStyle{color: #41a5e6;}
.bg_color3 .linkStyle{color: #fff;}
.bg_color4 .linkStyle{color: #23B473;}

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
.linkStyle{display: inline-block;}
}

/*--------------------------カラー--------------------------*/
body,.txt_color_nomal{color: #333333;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #41a5e6} /* メインカラー */
.txt_color2{color: #BED7F0} /* サブカラー */
.txt_color3{color: #23B473} /* アクセントカラー1 */
.txt_color4{color: #E6E6E6} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: black} /* 黒背景 */
.bg_color1{background-color: #73B9EB} /* メインカラー */
.bg_color2{background-color: #BED7F0} /* サブカラー */
.bg_color3{background-color: #7DCD96} /* アクセントカラー1 */
.bg_color4{background-color: #E6E6E6} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important}


/* border-color ※!important */
.border_color1{border-color: #73B9EB}
.border_color2{border-color: #BED7F0}
.border_color3{border-color: #7DCD96}
.border_color4{border-color: #E6E6E6}


/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #333333;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #41a5e6} /* メインカラー */
.hvr_txt_color2:hover{color: #BED7F0} /* サブカラー */
.hvr_txt_color3:hover{color: #23B473} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #E6E6E6} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: black} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #73B9EB} /* メインカラー */
.hvr_bg_color2:hover{background-color: #BED7F0} /* サブカラー */
.hvr_bg_color3:hover{background-color: #7DCD96} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #E6E6E6} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important}

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #73B9EB}
.hvr_border_color2:hover{border-color: #BED7F0}
.hvr_border_color3:hover{border-color: #7DCD96}
.hvr_border_color4:hover{border-color: #E6E6E6}