﻿@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');
@font-face {
font-family: "ShinseiKai";
src: url("../dup/img/ShinseiKai.ttf") format("ttf"),url("../dup/img/ShinseiKai.woff") format("woff"),url("../dup/img/ShinseiKai.woff2") format("woff2");
}

.cate_title,#contents .box h3,#intro #intro_txt h2,#contents h2,#top_cms .cms_title .title_box h2,#page_title .back_color2{
	font-family: "ShinseiKai", "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif"!important;
}




/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #78a8f7;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
body,.txt_color_nomal{color: #283440;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1, #intro #intro_txt h2{color: #283440} /* メインカラー */
.txt_color2{color: #45a8a1} /* サブカラー */
.txt_color3{color: #2d2d2d} /* アクセントカラー1 */
.txt_color4{color: #e6eaed} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: black} /* 黒背景 */
.bg_color1{background-color: #78a8f7} /* メインカラー */
.bg_color2{background-color: #ddd} /* サブカラー */
.bg_color3{background-color: #2d2d2d} /* アクセントカラー1 */
.bg_color4{background-color: #e6eaed} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important}

/* border-color ※!important */
.border_color1{border-color: #78a8f7}
.border_color2{border-color: #cecccc}
.border_color3{border-color: #2d2d2d}
.border_color4{border-color: #e6eaed}

/* hover_color */
.hvr_txt_color_nomal:hover{color: #283440;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #78a8f7} /* メインカラー */
.hvr_txt_color2:hover{color: #45a8a1} /* サブカラー */
.hvr_txt_color3:hover{color: #2d2d2d} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #e6eaed} /* アクセントカラー2 */

.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: black} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #78a8f7} /* メインカラー */
.hvr_bg_color2:hover{background-color: #ddd} /* サブカラー */
.hvr_bg_color3:hover{background-color: #2d2d2d} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #e6eaed} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important}

.hvr_border_color1:hover{border-color: #78a8f7}
.hvr_border_color2:hover{border-color: #ddd}
.hvr_border_color3:hover{border-color: #2d2d2d}
.hvr_border_color4:hover{border-color: #e6eaed}

body{line-height: 1.7;}
#intro #intro_txt p,.contents_txt{color: #283440;}


/* all ---------------------------------------------------------------------------------------------*/
#logo{width: 22.66667%!important;transform: translateY(5px);}
#logo img{width: 68%!important}
#header_menu{width: 38.66667%!important;}
.fa-envelope:before{display: none}
.header_info .contact {border-left: 1px solid;}
.header_info{margin-left: 13.66667%;}
.all_header #logo {width: 14%!important;transform: none;}
.drawer--left .drawer-hamburger, .drawer--left.drawer-open .drawer-nav, .drawer--left.drawer-open .drawer-navbar .drawer-hamburger{top: -3px;}
footer {background-color: #283440;max-width: 100%!important;}
#footer {border-top: none;}
footer #footer, footer #bottom_menu {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}
#footer, #bottom_menu {
    border-top: none;
    max-width: 1280px;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    color: #fff;
}
footer .txt_color1, footer .txt_color_nomal {color: #fff;}
.drawer-nav{background-color: rgba(255,255,255,0.90);}


/* top ---------------------------------------------------------------------------------------------*/
#main_img{margin-bottom: 0;max-height: 90vh;position: relative}
#main_img::before {
    content: '';
    display: inline-block;
    width: 100%;
    height: 100%;
    background-image: url(../dup/img/main_txt.png);
    background-size: 47%;
    background-repeat: no-repeat;
    background-position: bottom 22% left 79px;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    pointer-events: none;
}
.intro_wrap{
    background: url(../dup/img/intro_bg.jpg) top / 2000px no-repeat;
    padding: 1px 0;
}
#intro{
    height: 339px;
    max-height: 339px;
}
#intro #intro_txt h2{
	position: relative;
    padding: 10px 20px;
    border-right: solid 2px;
	font-size: 33px;
	letter-spacing: 6px;
	font-weight: bold;
	transform: translateY(-33px);
}
#intro #intro_txt h2::before{
	display: inline-block;
	content: "";
	width: 1px;
	height: 100%;
	background: #283440;
	position: absolute;
	top: 0;
	right: -6px;
}
#contents .back_color2::after{
    background-color: rgba(75,94,125,0.40)!important;
    background-image: url(./Dup/img/bg01.png);
    background-size: 50%;
    background-position: top right;
    background-repeat: no-repeat;
}
#contents h2{
    font-size: 40px;
    color: #fff;
    max-height: inherit;
    letter-spacing: 10px;
}
#contents h2 .svg_box{
	display: none;
}
#contents .box h3 {
    margin-left: 0;
    position: relative;
    font-size: 24px;
    font-weight: bold;
}
#top_cms .cms_title{
    background-color: #27313c;
    background-image: url(./Dup/img/bg02.png)!important;
    background-size: 500px;
    background-repeat: repeat;
}
#top_cms .cms_title .bg-mask, #top_cms .cms_title .title_box{
    background-color: transparent;
}
#top_cms .cms_title .title_box h2 {
    font-size: 26px;
    max-height: 250px;
    /* font-weight: bold; */
    color: #fff;
}


/* 他 ---------------------------------------------------------------------------------------------*/
.all main{padding-top: 82px;}
#page_title h2 {
    background-color: #283440;
    color: #fff;
    background-image: url(./Dup/img/bg02.png)!important;
    background-size: 254px;
    background-repeat: repeat;
    padding: 20px;
}
.cate_list li a {
    background-color: #78a8f7;
    color: #fff;
    padding: 10px 20px;
}
.cate_list li a:hover{
	color: #78a8f7;
    background-color: #fff;
}
#cms_2-c .cate_title{border-color: #283440;}
#cms_2-c .box_txt1 {
    position: relative;
	margin-bottom: 10px;
}
#cms_2-c .box_txt1::before {
    position: absolute;
    content: "";
    width: 50px;
    height: 2px;
    left: 0;
    bottom: 7px;
    background-color: #78a8f7;
}
#cms_6-b .cate_title {padding-bottom: 10px}
#cms_6-b .cate_box .box_txt1{
	background-image: url(./Dup/img/bg02.png);
    background-size: 254px;
	background-color: #283440;
}

/* IE */
@media all and (-ms-high-contrast: none){
#main_img{z-index: -1}
.cate_list li a{padding: 10px 20px 6px!important;}
#page_title h2{padding: 20px 20px 20px 8px!important;}
#cms_6-b .cate_title {padding-bottom: 5px}
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.all main{padding-top: 94px;}
.all_header #logo {
    width: 27.66667%!important;
    transform: translateY(5px);
}
#main_img::before {
    background-size: 68%;
    background-position: bottom 22% left 37px;
}
#intro #intro_txt h2 {
    font-size: 25px;
    transform: translateY(-9px);
}
#top_cms .cms_title .title_box h2{font-size: 24px;}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
.all main{padding-top: 70px;}
.font_100per {font-size: 14px;}
.header_info{margin-left: 10.66667%;}
#logo{width: 27.66667%!important}
#logo img{width: 97%!important;transform: translateY(-4px);}
.drawer--left .drawer-hamburger, .drawer--left.drawer-open .drawer-nav, .drawer--left.drawer-open .drawer-navbar .drawer-hamburger{top: -1px;}
.clone-nav #logo {width: 28%!important;}
.clone-nav .header_info .tel{margin-right: 18px;}
#main_img::before {
    background-size: 72%;
    background-position: bottom 22% left 21px;
}
.intro_wrap{background-size: 1500px}
#intro {
	margin-top: 0;
    height: auto;
    max-height: inherit;
}
#intro #intro_txt h2 {
    font-size: 24px;
    transform: none;
	border-right: none;
	border-bottom: solid 2px;
	letter-spacing: 2px;
}
#intro #intro_txt h2::before{
	width: 100%;
	height: 1px;
	top: auto;
    right: 0;
    bottom: 3px;
}
#contents .back_color2::after{background-size: 100%;}
#contents h2{font-size: 26px;letter-spacing: 5px;}
#contents .box h3{font-size: 19px;}
#top_cms .cms_title{background-size: 335px;}
#top_cms .cms_title .title_box h2{font-size: 20px;}
#page_title{height: 217px}
#page_title h2{font-size: 19px;padding: 15px 7px;}
#cms_2-c .cate_title {text-align: left}
#cms_2-c .box_txt1 {margin-bottom: 20px;}
#cms_2-c .box_txt1::before{bottom: 0;}
}






