﻿/* color */
body, .txt_color_nomal{color: #212121;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #4d2d1a} /* メインカラー */
.txt_color2{color: #efebe7} /* サブカラー */
.txt_color3{color: #333333} /* アクセントカラー1 */
.txt_color4{color: #f8f4e6} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: black} /* 黒背景 */
.bg_color1{background-color: #4d2d1a} /* メインカラー */
.bg_color2{background-color: #efebe7} /* サブカラー */
.bg_color3{background-color: #333333} /* アクセントカラー1 */
.bg_color4{background-color: #f8f4e6} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important}


/* border-color ※!important */
.border_color1{border-color: #4d2d1a}
.border_color2{border-color: #efebe7}
.border_color3{border-color: #333333}
.border_color4{border-color: #f8f4e6}


/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #212121;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #4d2d1a} /* メインカラー */
.hvr_txt_color2:hover{color: #efebe7} /* サブカラー */
.hvr_txt_color3:hover{color: #333333} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #f8f4e6} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: black} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #4d2d1a} /* メインカラー */
.hvr_bg_color2:hover{background-color: #efebe7} /* サブカラー */
.hvr_bg_color3:hover{background-color: #333333} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #f8f4e6} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important}


/* border-color ※!important */
.hvr_border_color1:hover{border-color: #4d2d1a}
.hvr_border_color2:hover{border-color: #efebe7}
.hvr_border_color3:hover{border-color: #333333}
.hvr_border_color4:hover{border-color: #f8f4e6}

.linkStyle {
    color: #4d2d1a;
}
.link_type3 .cate_box a .link_title1 {
    bottom: -47px;
}
.catch {
    z-index: 2;
}
.catch img {
    max-height: 50vh !important;
    min-height: 50vh !important;
    object-fit: contain !important;
}
.catch {
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.link_box .grid_1 img {
    width: 100% !important;
    height: auto !important;
}
.link_box .grid_1 {
    width: 10.33333%!important;
}
.r_logo {
    z-index: 2;
    right: 0;
    width: 70px;
    top: 50%;
    transform: translateY(-50%);
}
.l_logo {
    z-index: 2;
    left: 15px;
    width: 50px;
    top: 50%;
    transform: translateY(-50%);
}
.u_logo {
    z-index: 2;
    top: -70px;
    height: 50px;
    left: 50%;
    transform: translateX(-50%);
}
.d_logo {
    z-index: 2;
    bottom: -70px;
    height: 50px;
    left: 50%;
    transform: translateX(-50%);
}
/*.right_logo {
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}
.right_logo img {
    height: 300px;
}*/
.kyara {
    bottom: 0px;
    left: 0;
    opacity: 0.3;
    width: 200px;
}
#contents3 .con_no {
    color: #fff;
}
.kyara3 {
    width: 182px;
    bottom: -104px;
    left: 0px;
}
#main_img {
    width: 90%;
    margin: 80px auto;
}
#page_title .title_img {
    background-position-y: -200px;
    height: 360px;
}
.font_14, #cms_2-b .cate_txt1, #cms_2-b .box_txt1, #cms_1-a .box_txt1, #cms_3-b .cate_txt1, #cms_3-b .box_txt1, #cms_5-a .cate_box p, #page7 .box_item h3, #page7 .box_item p, #page8 #tel_txt h3, #page8 #tel_txt p, #page9 .top_txt p, #page9 .box_wrap h3, #page9 .box_wrap p {
    font-size: 18px;
}
/*************ボタン**********************/
.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
/*その他と主な共通部分は省略*/

a.btn-flat {
    overflow: hidden;
    padding: 1.5rem 6rem;
    color: #fff;
    border-radius: 0;
    background: #333;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 50px;
}

a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
    position: absolute;
    top: 0;
    left: 30px;
    width: 150%;
    height: 500%;
    content: '';
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    -webkit-transform: translateX(-98%) translateY(-70%) rotate(135deg);
    transform: translateX(-98%) translateY(-70%) rotate(135deg);
    background: #4d2d1a;
}

a.btn-flat:hover:before {
  -webkit-transform: translateX(-9%) translateY(-25%) rotate(135deg);
  transform: translateX(-9%) translateY(-25%) rotate(135deg);
}
/* ---------- 1280px ---------- */
@media screen and (max-width: 1281px){
#page_title .title_img {
    background-position-y: -120px;
    height: 280px;
}
}
/********トップ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;
    background-color: #4e2d1a;
}
.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;}
	
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){	
.link_type3{padding-bottom: 0;}
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#logo {
    max-width: 120px;
}
#main_img {
    margin-top: 40px;
}
.kyara3 {
    width: 151px;
    bottom: -94px;
    left: -33px;
}

#main_img {
    width: 100%;
    height: auto;
    overflow: hidden;
    margin: 0px auto;
}
.d_logo {
    z-index: 2;
    bottom: -60px;
}
.main_box {
    margin-top: 40px;
}
#page_title .title_img {
    background-position-y: -100px;
    height: 200px;
}
}
/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
#logo {
    max-width: 250px;
    margin: 5px 0 10px;
}
#main_img {
    margin-top: 10px;
}
.kyara3 {
    width: 125px;
    bottom: -81px;
    right: 21px;
}
.d_logo {
    width: 300px;
}
#contents1 h2, #contents2 h2 {
    font-size: 19px;
}
.main_box {
    margin-top: 0px;
}
#page_title .title_img {
    background-position-y: -26px;
    height: 120px;
}
.font_14, #cms_2-b .cate_txt1, #cms_2-b .box_txt1, #cms_1-a .box_txt1, #cms_3-b .cate_txt1, #cms_3-b .box_txt1, #cms_5-a .cate_box p, #page7 .box_item h3, #page7 .box_item p, #page8 #tel_txt h3, #page8 #tel_txt p, #page9 .top_txt p, #page9 .box_wrap h3, #page9 .box_wrap p {
    font-size: 14px;
}
.btn, a.btn, button.btn {
    font-size: 1.3rem;
}
}