﻿.bg_color1 {background-color: #aadceb;}
.bg_color2 {background-color: #f7f7f3;}
.bg_color3 {background-color: #333;}
.txt_color1 { color: #3fbde3;}
.txt_color3 {color: #333;}
.border_color1 {border-color: #aadceb;}
.border_color3 {border-color: #333;}
.hvr_txt_color3:hover {color: #333;}

/* ----------　ローディング　---------- */
#loading_bg{
	height: 100vh;
	width: 100vw;
	z-index: 200
}
#loading{
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#loading img{
	z-index: 1
}
#loading .gauge{
	width: 0;
	-webkit-transform: skewX(10deg);
	-ms-transform: skewX(10deg);
	transform: skewX(10deg);
	transform-origin: left bottom
}
/* ----------　all　---------- */
.linkStyle{
	color:#;
}
.linkStyle:hover{
	color:#;
	opacity: 0.7;
	transition: all 0.5s;
}
body, .more a::after, .cate_list li a::after, #page10 ul li a .title::after, #tel_contact > div > .d_inline_b > div p span {
    background-color: #fff;
}
.font_serif {
    font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
}
main {
    overflow: hidden;
}
header nav li a,.sc_menu li a{
border-left: 2px solid #333!important;
}
header nav li:last-child a,.sc_menu li:last-child a{
border-right: 2px solid #333!important;
}
.border_rad10 {
    border-radius: 3px;
}
#contact_bar{
    background-color: #333;
}
#contact_bar p{
    background-color: #aadceb;
    color: #333;
    padding: 10px;
}
#contact_bar a {
    color: #fff;
}
.banner {
    width: 80%;
    max-width: 600px;
    margin: auto;
}
.sc_menu {
    border: 3px solid #333333;
}
.menu_bt > div .bar {
    background-color: #333;
}
.menu_bt > div span:first-of-type {
    color: #333;
}
#page-top div{
    color: #333;
}
#copyright {
    color: #333;
}
/*フェードインcss*/
.fadein_up{
    transition: transform .5s ease-out, opacity .5s ease-out;
      transform: translatey(80px);
      opacity: 0;
}
.fadein_up.scrollin{
      transform: none;
      opacity: 1;
    transform: translatey(0%);
}
/* ----------　TOPアニメーション　---------- */
.img-container{
    overflow: hidden;
    position: relative;
	display: inline-block;
}
.img-container_img{
    opacity: 0;
    position: relative;
    transition:all .5s .3s ease; 
    z-index: 0;
}
.img-container:before{
    background:#333;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transform: translateX(-100%);
    transition:all 1.2s 0s ease; 
    width: 100%;
    z-index: 1;     
}

.img-container.active .img-container_img{
    opacity: 1!important;
}
.img-container.active:before{
    transform: translateX(100%);        
}
/* ----------　TOP　---------- */
#main_img{
    position: relative;
}
.main_cacth{
    position: absolute;
    z-index: 9;
    top: 65%;
    left: 0%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    width: 70%;
    max-width: 800px;
}
#intro::after {
    background-color: #333;
}
#intro .width_1280-max{
    background-color: #fff;
    padding: 50px 30px;
}
#intro .width_1280-max h3,#intro .width_1280-max p{
color: #333;
}
#intro .width_1280-max h3{
font-weight: bold;
    font-size: 25px;
}
#contents_links{
display:none;
}
#contents2 h3{
    font-weight: bold;
    font-size: 25px;
}
#top_cms .top_cms_title p{
    background-color: #333;
    color: #fff;
}
#top_cms .top_cms_title p span{
opacity: 1;
}
.top_cms1_back{
    position: relative;
    padding-bottom: 1px;
}
.top_cms1_back:before{
content: "";
    display: block;
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
width: 100%;
height: 250px;
bottom: 0px;
left: 0;
background: url(Dup/img/line.png) repeat-x;
background-position:0 50%;
background-size:110%;
animation: bgroop 30s linear infinite;
}
@keyframes bgroop{
    0% { background-position: 0 50%;}
  100% { background-position: 1100% 50%;}
}
/* ----------　下層ページ　---------- */
#page_title p {
    background-color: #333;
    color: #ffffff;
}
#page_title h2 {
    color: #333;
}
.cate_list li {
    border-radius: 3px;
    width: 21%;
    margin-right: 3%;
}
.cate_list li a{
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
    text-align: center;
}
.cate_list li a::after {
    border-radius:0px;
}
#page07 .box_wrap .box h3 span {
    border-radius: 3px;
}
#page09 .privacy_box .no {
    border-radius: 3px;
    background-color: #333;
}
#page10 ul li a .title {
    border-radius: 3px;
}
#page10 ul li a .title::after {
    content: "";
    border-radius: 0px;
}
#page10 ul li a .sub_title {
    border-radius: 3px;
    color: #fff;
    background-color: #333;
}


/* ----------　IE　---------- */
@media all and (-ms-high-contrast: none){
#cms_2-a .cate .cate_title {
    padding-top: 10px!important;
}
#cms_6-a .cate .cate_title {
    padding-top: 10px!important;
}
#cms_6-b .cate .cate_title {
    padding: 10px 10px 10px!important;
text-align: left!important;
}

}

/* ----------　タブレット　---------- */
@media screen and (max-width: 768px){
.main_cacth {
    top: 60%;
    left: 2%;
    max-width: 800px;
}
#contents2 figure{
    height: auto!important;
}
.cate_list li {
    width: 30%;
}
}


/* ----------　スマホ　---------- */
@media screen and (max-width: 667px){
.banner {
    width: 100%;
}
.main_cacth {
    top: 55%;
}
.top_cms1_back:before {
    width: 150%;
    height: 220px;
}
.img-container_img {
    opacity: 1;
}
#intro .width_1280-max h3 {
    font-weight: bold;
    font-size: 22px;
    letter-spacing: 0px;
    padding: 0;
    text-align: left;
}
#intro .width_1280-max p{
    padding: 20px 0;
}
#top_cms .cms_5-c {
    padding: 0 10px;
}
#loading img {
    width: 70%;
    max-width: 300px;
}
}