﻿/* color */
body,.txt_color_nomal{color: #555;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #00979b} /* メインカラー */
.txt_color2{color: #f3f3f3} /* サブカラー */
.txt_color3{color: #f9b044} /* アクセントカラー1 */
.txt_color4{color: #ffcebd} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: black} /* 黒背景 */
.bg_color1{background-color: #00979b} /* メインカラー */
.bg_color2{background-color: #f3f3f3} /* サブカラー */
.bg_color3{background-color: #f9b044} /* アクセントカラー1 */
.bg_color4{background-color: #ffcebd} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important}

/* border-color ※!important */
.border_white{border-color: #fff}
.border_color1{border-color: #00979b}
.border_color2{border-color: #f3f3f3}
.border_color3{border-color: #f9b044}
.border_color4{border-color: #ffcebd}

/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #555;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #00979b} /* メインカラー */
.hvr_txt_color2:hover{color: #f3f3f3} /* サブカラー */
.hvr_txt_color3:hover{color: #f9b044} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #ffcebd} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: black} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #00979b} /* メインカラー */
.hvr_bg_color2:hover{background-color: #f3f3f3} /* サブカラー */
.hvr_bg_color3:hover{background-color: #f9b044} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #ffcebd} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important}

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #00979b}
.hvr_border_color2:hover{border-color: #f3f3f3}
.hvr_border_color3:hover{border-color: #f9b044}
.hvr_border_color4:hover{border-color: #ffcebd}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){

/* color */
body,.txt_color_nomal{color: #555;}
.txt_white_tb{color: white;}
.txt_red_tb{color: red;}
.txt_color1_tb{color: #00979b} /* メインカラー */
.txt_color2_tb{color: #f3f3f3} /* サブカラー */
.txt_color3_tb{color: #f9b044} /* アクセントカラー1 */
.txt_color4_tb{color: #ffcebd} /* アクセントカラー2 */
	
/* background-color */
.bg_white_tb{background-color: white} /* 白背景 */
.bg_black_tb{background-color: black} /* 黒背景 */
.bg_color1_tb{background-color: #00979b} /* メインカラー */
.bg_color2_tb{background-color: #f3f3f3} /* サブカラー */
.bg_color3_tb{background-color: #f9b044} /* アクセントカラー1 */
.bg_color4_tb{background-color: #ffcebd} /* アクセントカラー2 */
.bg_color_clear_tb{background-color: transparent!important}
	
/* border-color ※!important */
.border_white_tb{border-color: #fff}
.border_color1_tb{border-color: #00979b}
.border_color2_tb{border-color: #f3f3f3}
.border_color3_tb{border-color: #f9b044}
.border_color4_tb{border-color: #ffcebd}
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.bg_color_clear_sp{background-color: transparent!important}
}

@font-face {
font-family: "gyousyo";
  src: url("./Dup/css/gyousyo.ttf") format("ttf"),url("./Dup/css/gyousyo.woff") format("woff"),url("./Dup/css/gyousyo.woff2") format("woff2");
}
.linkStyle {
    color: #f9b044;
}
#main_img h2{
     font-family: "gyousyo", serif !important;
}
/*.catch2 {
    position: absolute;
    top: 0px;
    left: 0;
    z-index: -1;
}*/
#page8 #contact_wrap .border_color2 {
    border-color: #555;
}
#main_img {
    overflow: hidden;
}
#main_img h2 {
    font-weight: 700;
    line-height: 1.5;
    FONT-VARIANT: JIS04;
    font-size: 4vw;
}
#intro h2 {
    padding: 1rem 2rem;
    color: #fff;
    background: #f9b044;
    -webkit-box-shadow: 5px 5px 0 #bfad53;
    box-shadow: 5px 5px 0 #bfad53;
}

#contents1 h2 {
    text-align: center;
}
.con1_box {
    margin: 2em 0;
    background-color: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.con1_box h2 {
    font-size: 1.2em;
    background: #f9b044;
    padding: 10px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.con1_box p {
    padding: 15px 20px;
    margin: 0;
}
#contents1 .bg_color2 {
    background-color: #f1f1f1;
background-image: url("https://www.transparenttextures.com/patterns/cubes.png");
}
#contents2 .cate_box {
  position: relative;
  background-color: #f1f1f1;
background-image: url("https://www.transparenttextures.com/patterns/cubes.png");
}
#contents2 .cate_box:before {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 100%;
    height: 100%;
    content: '';
    border: 3px solid #f9b044;
}
.con2_s {
  position: relative;
  padding: 1.5rem 1rem;
}

.con2_s:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #f9b044, #f9b044 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #f9b044, #f9b044 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#top_info {
    background-image: url("./Dup/img/footer_back.png");
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: contain;
}
#page_title h2 span {
    color: #f57f40;
}
#top_cms {
    padding-top: 250px;
}
#cms_5-a .box_wrap {
    display: block;
}
#page8 #tel_txt .txt_color2 {
    color: #00979b;
}
#page8 #contact_tel a {
    padding-left: 0;
    padding-right: 0;
}
/*************流れるアニメ****************************/
.jp_slide_img_wrapper {
    position: absolute;
    width: 100%;
    height: 20vh;
    background-image: url(./Dup/img/tetsu.png);
    background-repeat: repeat-x;
    background-size: cover;
    background-position: 0 0;
    animation-name: slide_img;
    animation-duration: 200s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    top: -20px;
    pointer-events: none;
    margin-left: -80px;
}

@keyframes slide_img {
    100% {
        background-position: -10000px 0;
        }
}
.jp_slide_img_overlay{
    position: absolute;
    top: 0%;
    right: 0%;
    left: 0%;
    bottom: 0%;
    width: 100%;
    height: 100%;
/*    background-color: rgba(46, 36, 100, 0.4);*/
display: none;
}
#f_contact .hover_box {
    background-image: url("./Dup/img/contact_back.png");
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
}
/* ----------切り替え ---------- */
@media screen and (max-width: 1275px){
    #main_img {
    z-index: 0;
    height: 100% !important;
}
#main_img::before {;
    height: 98.5%;
}
#intro {
    margin-top: -10px;
}
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
    #contents1 .grid_7 {
    width: 100%!important;
}
    #contents1 .grid_5 {
    width: 85%;
    margin-top: 50px;
}
#main_img::before {;
    height: 98%;
}
#contents1 .d_flex {
    padding-left: 0%;
}

.jp_slide_img_wrapper {
    height: 20vh;
    top: 20px;
    margin-left: -40px;
}
#main_img {
    overflow: hidden;
    margin-top: 90px;
}
.more_bt2 h2 span {
    position: absolute;
    bottom: -7px;
    left: 0;
}
#page10 .more_bt2 a {
    width: 100%;
    height: 60px;
    line-height: 60px;
    padding-bottom: 20px;
}
#main_img h2 {
    font-weight: 700;
    line-height: 1.5;
    FONT-VARIANT: JIS04;
    font-size: 6vw;
}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
    #contents1 .grid_7 {
    width: 80%!important;
}
#top_info {
    background-image: url(./Dup/img/footer_back.png);
    background-position: top right;
    background-repeat: no-repeat;
    background-size: contain;
}
#main_img::before {
    height: 97%;
}
#main_img .txt {
    top: 60%;
}
#main_img h2 {
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.02em;
    font-size: 7vw;
}
#top_cms {
    padding-top: 200px;
}
.jp_slide_img_wrapper {
    height: 20vh;
    top: 20px;
    margin-left: -20px;
}
.intro_title h2 {
    font-size: 21px;
}
#main_img {
    overflow: hidden;
    margin-top: 65px;
}
.more_bt2 h2 span {
    position: relative;
    bottom: 0px;
    right: 0;
}
#page10 .more_bt2 a {
    padding-bottom: 0px;
}
}