﻿/*--------------------------------------------
 色 ・　文字
----------------------------------------------*/
:root{
    --color1: #101841;
    --color2: #00bfff;
    --color3: #ffde59;
    --color4: #ffde59;
	--text: #111111;
    --base: #ffffff;
    
    --font1: 16px;
    --fontB1: 32px;
    --font-jp: 'Noto Sans JP', "游ゴシック Medium", sans-serif;
}
/* スマホ */
@media screen and (max-width: 667px){
    :root{
        --fontB1: 22px;
    }
}
/*--------------------------------------------
 
----------------------------------------------*/



/* --------------------------------------------
 リンクボタン 
---------------------------------------------*/
.linkStyle,a{
	color: var(--color1);
	text-decoration: underline;
	transition: all 0.5s;
}
a{
    text-decoration: none;
}
.linkStyle:hover{
	opacity: 0.7;
	text-decoration: none;
}

.cate_list li a,#page10 ul li a,.more a{
    background-color: var(--color1);
    /*background: linear-gradient(90deg, var(--color3)5%, var(--color1)95%);*/
    color: var(--base);
    font-weight: bold;
    padding: 10px 20px;
    transition: all 0.8s;
}
#page10 ul li a{
    padding-top: 15px;
    padding-bottom: 15px;
}
.cate_list li a:hover,#page10 ul li a:hover,.more a:hover{
    background-color:var(--color3);
    opacity: 0.7;
}


/*--------------------------------------------
 色 ・　文字
----------------------------------------------*/
html,body,.font_10,.font_11,.font_12,.font_13,.font_14,.font_15{font-size: var(--font1);}
.font_2up{font-size: max(calc(var(--font1) + 2px), calc(1rem  + 2px));}
.font_4up{font-size: max(calc(var(--font1) + 4px), calc(1rem  + 4px));}
.font_2dw{font-size: max(calc(var(--font1) - 2px), calc(1rem  - 2px));}
.font_4dw{font-size: max(calc(var(--font1) - 4px), calc(1rem  - 4px));}
.font_6dw{font-size: max(calc(var(--font1) - 6px), calc(1rem  - 6px));}




/* color */
body, .txt_color_nomal, .hvr_txt_color_nomal:hover{color: var(--text);}
.linkStyle{transition: 0.5s;color: var(--text)}
.linkStyle:hover{opacity: 0.7}

.txt_white, .hvr_txt_white:hover{color: white;}
.txt_red, .hvr_txt_red:hover{color: var(--red);}
.txt_color1, .hvr_txt_color1:hover{color: var(--color1)} /* メインカラー */
.txt_color2, .hvr_txt_color2:hover{color: var(--color2)} /* サブカラー */
.txt_color3, .hvr_txt_color3:hover{color: var(--color3)} /* アクセントカラー1 */
.txt_color4, .hvr_txt_color4:hover{color: var(--color4)} /* アクセントカラー2 */

/* background-color */
.bg_white, .hvr_bg_white:hover{background-color: white} /* 白背景 */
.bg_black, .hvr_bg_black:hover{background-color: var(--black)} /* 黒背景 */
.bg_color1, .hvr_bg_color1:hover{background-color: var(--color1)} /* メインカラー */
.bg_color2, .hvr_bg_color2:hover{background-color: var(--color2)} /* サブカラー */
.bg_color3, .hvr_bg_color3:hover{background-color: var(--color3)} /* アクセントカラー1 */
.bg_color4, .hvr_bg_color4:hover{background-color: var(--color4)} /* アクセントカラー2 */
.bg_color_clear, .hvr_bg_color_clear:hover{background-color: transparent!important}


/* border-color ※!important */
.border_white, .hvr_border_white:hover{border-color: white}
.border_black, .hvr_border_black:hover{border-color: var(--black)}
.border_color1, .hvr_border_color1:hover{border-color: var(--color1)}
.border_color2, .hvr_border_color2:hover{border-color: var(--color2)}
.border_color3, .hvr_border_color3:hover{border-color: var(--color3)}
.border_color4, .hvr_border_color4:hover{border-color: var(--color4)}



/****************追加***********************************/
body {
    background-image: url(./Dup/img/back.jpg);
    background-size: 50%;
}
#logo img {
    width: 80%;
}
#contents2 h2 {
    width: 60%;
    margin: 0 auto;
}
#main_img .txt {
    z-index: 10;
    top: 28%;
    left: 5vw;
}
.asiba {
    bottom: 0;
    right: 0;
    width: 27%;
    opacity: 0.1;
}
#pc_nav .grid_2 {
    background-color: var(--color2);
}
#f_contact .hover_box {
    background-color: var(--color2);
}
.intro_title h2 span, #contents1 h2 span {
    border-bottom: solid 3px #fff;
    position: relative;
    color: #ffde59;
}
.intro_title h2 span:after, #contents1 h2 span:after {
    position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ffde59;
  bottom: -3px;
  width: 30%;
}
#top_info h2 {
    background-color: var(--color2);
}
#top_info {
    background-color: var(--color1);
}
.tel_bt .hvr_txt_color1:hover {
    color: #fff;
}
.info_txt h3, .info_txt p, .more_bt2 a {
    color: #fff;
}
#contents2 p, #pc_nav li a {
    font-weight: bold;
}
.date {
    color: #f57f40;
}
.more_bt a {
    color: #fff;
}
.more_bt a:hover {
    color: #222;
}
.pager a {
    color: var(--color1);
}
.pager a:hover {
    color: #fff;
    background-color: var(--color2);
}
#cms_2-a .cate_title {
    font-weight: bold;
}
#cms_6-b .cate_title {
    background-color: var(--color2);
    font-weight: bold;
}
#page10 h2 .opacity06 {
    opacity: 1;
}
.head_fix #pc_nav .grid_3 #logo img {
    width: 60%;
}
.contact_tel a {
    color: var(--color1);
}
.contact_tel a:hover {
    color: var(--color2);
}
#cms_5-a .cate .box_wrap {
    display: block;
}
/*#cms_5-a .cate_title i {
    transform: rotate(180deg);
}
#cms_5-a .cate_title.on_click i {
    transform: rotate(0deg);
}*/



/* 閉じるボタン付き追従バナー */
.fix_banner{
	max-width: 400px;
	position: fixed;
	bottom: 80px;
	right: 0;
	z-index: 10;
	transition: 0.5s;
}
.fix_banner .close_bt{
	position: absolute;
	bottom: 80px;
    right: 380px;
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	transition: 0.5s;
	background-color: #fff;
	border: solid 2px #004b9b;
	z-index: 11;
	cursor: pointer;
}
.fix_banner .close_bt:hover{opacity: 0.7;}
.fix_banner .close_bt span{
	position: relative;
	display: block;
	width: 30px;
	height: 30px;
}
.fix_banner .close_bt span:before,.fix_banner .close_bt span:after{
	content: "";
	display: block;
	background-color: #004b9b;
	height: 4px;
	width: 20px;
	position: absolute;
	top:50%;
	left: 50%;
}
.fix_banner .close_bt span:before{
	-ms-transform: translate(-50%,-50%) rotate(-45deg);
	-webkit-transform: translate(-50%,-50%) rotate(-45deg);
	transform: translate(-50%,-50%) rotate(-45deg);
}
.fix_banner .close_bt span:after{
	-ms-transform: translate(-50%,-50%) rotate(45deg);
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
	transform: translate(-50%,-50%) rotate(45deg);
}
.fix_banner.close{right: -450px;}
.fix_banner.close2{right: -450px;}

@media  screen and (max-width: 768px){
.fix_banner{max-width: 300px;}
.fix_banner .close_bt{bottom: 60px;right: 280px;}
}

@media  screen and (max-width: 667px){
.fix_banner{max-width: 250px;}
.fix_banner .close_bt{
	width: 25px;
	height: 25px;
	bottom: 40px;
	right: 230px;
}
.fix_banner .close_bt span{
	width: 25px;
	height: 25px;
}
.fix_banner {
    bottom: 10px;
    right: 80px;
}
}
/* 閉じるボタン付き追従バナー end */





/* タブレット */
@media screen and (max-width: 768px){
#main_img .txt {
    z-index: 10;
    top: 65%;
    left: 7vw;
}
.asiba {
    width: 40%;
}
#contents2 h2 {
    width: 70%;
}
.more_bt .f_contact_bt {
    background-color: var(--color2);
}
#cms_5-c .box_title1 {
    padding-top: 7px;
}
#logo {
    text-align: left;
}
.head_fix #pc_nav .grid_3 #logo img {
    width: 80%;
}
}
/* スマホ */
@media screen and (max-width: 667px){

.intro_title h2, #contents1 h2 {
    font-size: 22px;
}
.intro_title h2 span, #contents1 h2 span {
    border-bottom: none;
}
.intro_title h2 span:after, #contents1 h2 span:after {
  display: none;
}
.asiba {
    width: 100%;
}
#contents2 h2 {
        width: 90%;
}
#cms_5-a .box_wrap {
    padding: 20px 10px;
}
#page10 .more_bt2 {
    margin-right: 0;
    margin-left: 0;
}
}
