﻿/* ロゴ ---------------------------------------------*/
header.scr_header #logo{max-width: 80px;}
#footer #logo2 .width_300-max{max-width: 180px;}
#main_img .width_300-max{max-width: 200px;}

/* スマホ */
@media screen and (max-width: 667px){
    #footer #logo2 .width_300-max{max-width: 140px;}
}

/* ねこのイラスト -----------------------------------*/
#intro .dec1{
    position: absolute;
    max-width: 230px;
    width: 20%;
    bottom: -60px;
    right: 15%;
}

#contents1 .dec1_l{
    position: absolute;
    max-width: 230px;
    width: 20%;
    bottom: -60px;
    left: 10%;
}

#contents3 .dec2{
    position: absolute;
    z-index: 2;
    max-width: 100px;
    width: 20%;
    top: -60px;
    left: 5%;
}
.top_cms_box .dec3{
    position: absolute;
    max-width: 200px;
    width: 20%;
    top: -130px;
    right: 0;
}
#info_contact .dec4{
    position: absolute;
    z-index: 0;
    max-width: 200px;
    width: 20%;
    top: -230px;
    left: 0;
}

/*右から出てくるアニメーション*/
.fadein{
	transform: translate(100px,-30px)rotate(-30deg);
	transition: transform 1.5s ease, opacity 2s;
	transition-property: opacity,transform;
	opacity: 0;
}
.fadein.start{transform: translate(0)rotate(0deg);opacity: 1;}

/*左から出てくるアニメーション*/
.fadein2{
	transform: translate(-100px,-30px)rotate(30deg);
	transition: transform 1.5s ease, opacity 2s;
	transition-property: opacity,transform;
	opacity: 0;
}
.fadein2.start{transform: translate(0)rotate(0deg);opacity: 1;}

/*ゆらゆら動くアニメーション*/
.ani1{
    animation-name:updownAnime2;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: reverse;
    animation-duration:1.5s; /* アニメーション時間 */
}

@keyframes updownAnime2{
  0% {transform: rotate(0deg);}
  20% {transform: rotate(0deg);}
  40% {transform: rotate(10deg);}
  60% {transform: rotate(0deg);}
  80% {transform: rotate(10deg);}
  100% {transform: rotate(0deg);}
}

/* タブレット */
@media screen and (max-width: 768px){
    #contents3 .dec2{top: -80px;}
    .top_cms_box .dec3{max-width: 120px;right: 10px;}
}
/* スマホ */
@media screen and (max-width: 667px){
    #intro .dec1{width: 30%;right: 13%;}
    #contents1 .dec1_l{ width:30%;}
    .top_cms_box .dec3{top: -30px;}
    #info_contact .dec4{width: 30%;top: -130px;}
}

/* CMS・下層ページ ----------------------------------*/
.cms_1-g .cate_box,.cms_3-d .cate_box > div,.v_type3 .cate_box{
    box-shadow:rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;
}
.cms_1-g .box_img1{border-radius: 10px 0 0 10px;}
.cms_1-g .date{
    padding-top: 10px;
}
.cms_1-g .box_txt1{
    padding-right: 10px;
    line-height: 1.5;
}
.cms_1-g .pd_r-20px{padding-right: 0px;}
#cms_1-g .box_title1{
    font-size: 28px;
    color: #2143a3;
    font-weight: 600;
}
.pager li a:hover{
    background-color: #879cd7!important;
}

.cms_5-d .box_title1,#cms_5-d .box_title1{
    background-color: #fff;
}
#cms_5-d .box_title1:after, .cms_5-d .box_title1:after{
    border-color: #e1bebe transparent;
}
/* タブレット */
@media screen and (max-width: 768px){
    #cms_1-g .box_title1{font-size: 24px;}
}
/* スマホ */
@media screen and (max-width: 667px){
    .cms_1-g .box_img1{border-radius: 10px 10px 0 0px;}
    .cms_1-g .box_txt1{padding: 0px;}
    #cms_1-g .box_title1{font-size: 20px;}
    .cms_3-d .cate_box{padding: 0;}
}
/* メインイメージ -----------------------------------*/
#main_img:before{background-color: rgba(255,255,255,0.4)!important;}
.menu p{max-width: 550px;}
.menu p a{margin-bottom: 20px;}
#top_pc_nav li a::after{bottom: -5px;}

.catch {
    
}
#top_pc_nav li{
    background-color: #5572c4;
    padding: 10px 15px;
    border-radius: 25px;
    font-weight: bolid;
}

@media screen and (max-width: 1280px){
    
    .menu p a{display:none;}
}
/* タブレット */
@media screen and (max-width: 768px){
    .menu p{max-width: 400px;}
}
/* スマホ */
@media screen and (max-width: 667px){
    .menu p{max-width: 290px;}
}


/* トップページ -------------------------------------*/
.back1:before{background-color: #fff8f8!important;}
.back2:before{background-color: #f2fbff!important;}
.more_btn{
    font-size: 22px;
    font-weight: bold;
    font-family: 'Roboto', sans-serif;
}

.num{opacity: 1;}

#contents1 .num{left: 50%;top: -50px;}
#contents1 .con_box{margin-top: 70px;}
#contents1 .con_box .con_title h3{font-size: 34px;}

#contents2{padding-top: 50px;}
#contents2 .con_img{order: 2;}
#contents2 .con_box .con_title h3{font-size: 34px;}

#contents3 .con_box .con_title h3{font-size: 34px;}
#contents3_wrap:after{background-color:transparent!important;}

#top_cms.back1:before{display: none;}

/* タブレット */
@media screen and (max-width: 768px){
    #contents1 .num,#contents2 .num{left: 50%;top: -30px;}
    #contents1 .con_img{width: 50%!important;margin: 0px auto 0;}
    #contents1 .con_box{width: 90%!important;margin: 30px auto 0;}
    #contents1 .con_box .con_title{text-align: center;}
    #contents1 .con_box .con_title h3{font-size: 30px;}
    #contents1 .line:before{left: 50%;transform: translate(-50%,0);}
    
    #contents2{padding-top: 50px;}
    #contents2 .con_img{width: 50%!important;margin: 0px auto 0;order: 1;}
    #contents2 .con_box{width: 90%!important;margin: 30px auto 0;order: 2;}
    #contents2 .con_box .con_title{text-align: center;}
    #contents2 .con_box .con_title h3{font-size: 30px;}
    #contents2 .line:before{left: 50%;transform: translate(-50%,0);}
    
    #contents3 .con_box .con_title h3{font-size: 30px;}
}
/* スマホ */
@media screen and (max-width: 667px){
    .more_btn{font-size: 17px;}
    #contents1 .num,#contents2 .num{top: -70px;}
    #contents1 .con_img{width: 80%!important;}
    #contents1 .con_box{width: 96%!important;}
    #contents1 .con_box .con_title h3{font-size: 24px;}
    
    #contents2 .con_img{width: 80%!important;}
    #contents2 .con_box{width: 96%!important;}
    #contents2 .con_box .con_title h3{font-size: 24px;}
    
    #contents3 .con_box .con_title h3{font-size: 24px;}
}

/* 全体 ---------------------------------------------*/
.hannari{font-family: 'M PLUS Rounded 1c', sans-serif;}
.didot{font-family: 'Roboto', sans-serif;}

#fakeloader {background-color: #fff8f8;}
header.scr_header{background-color: rgba(255,255,255,0.7)!important;}
#pc_nav li a{color: #333;}
#pc_nav li a:hover::after{background: rgba(0,0,0,0.3);}
.button_container span{background: #333;}
#logo{max-width: 80px;}

#page_title:before{background-color: rgba(255,255,255,0.4)!important;}
#page_title .page_title_box{background-color: rgba(231, 209, 209 ,0.8);}

.linkStyle{
	color:#2143a3;
	text-decoration: underline;
	transition: all 0.5s;
}
.linkStyle:hover{
	color:#2143a3;
	opacity: 0.7;
	text-decoration: none;
}

/* タブレット */
@media screen and (max-width: 768px){
    .page_title_box{width: 350px;}

    #footer_con #logo2{width: 35%!important;}
    #footer_con .con_box{width: 65%!important;}
}
/* スマホ */
@media screen and (max-width: 667px){
    #logo{max-width: 80px;}
    .page_title_box{width: 300px;}

    #footer_con .con_box h2{
        font-size: 21px;
        letter-spacing: 0em;
    }
    #footer_con #logo2{width: 80%!important;}
    #footer_con .con_box{width: 100%!important;}
}

/* 配色 ----------------------------------------------*/

.txt_color1,.hvr_txt_color1:hover{color: #2143a3;} 
.txt_color2,.hvr_txt_color2:hover{color: #bbb;} 
.txt_color3,.hvr_txt_color3:hover{color: #ffa9a9;} 
/*.txt_color4,.hvr_txt_color4:hover{color: #eae4df;} */
/*.txt_color5,.hvr_txt_color5:hover{color: #f2ede7;}*/ 

.bg_color1,.hvr_bg_color1:hover{background-color: #e7d1d1;}
.bg_color2,.hvr_bg_color2:hover{background-color: #f1f1f1;}
.bg_color3,.hvr_bg_color3:hover{background-color: #e1bebe;} 
/*.bg_color4,.hvr_bg_color4:hover{background-color: #eae4df;} */
/*.bg_color5,.hvr_bg_color5:hover{background-color: #f2ede7;}*/ 

.border_color1,.hvr_border_color1:hover{border-color: #2143a3;}
.border_color2,.hvr_border_color2:hover{border-color: #ccc;}
.border_color3,.hvr_border_color3:hover{border-color: #e1bebe;}
.border_color4,.hvr_border_color4:hover{border-color: #e1bebe;}
/*.border_color5,.hvr_border_color5:hover{border-color: #f2ede7;}*/

/*テンプレート  -------------------------------------*/

body,.font_14,.font_12,.font_100per,.font_2dw,.font_2dw_tb,.font_2dw_sp,.font_14_sp{font-size: 16px;}
.font_2up{font-size: 18px;}
.font_4up{font-size: 20px;}
#cms_1-g .date2{font-size: 25px;}
.button_container span:nth-of-type(1){font-size: 12px;color: #333;}
#page9 .box_wrap h3{letter-spacing: 0.07em;}

#intro,#contents1,#contents2,#contents3,.top_cms_box{
    position: relative;
    z-index: 2;
}

/* タブレット */
@media screen and (max-width: 768px){
    #cms_1-g .date2{font-size: 22px;}
    .prev{margin: 0;}
}
/* スマホ */
@media screen and (max-width: 667px){
    #cms_1-g .date2{font-size: 16px;}
    
}

/* v_type3 -----------------------------------------------*/
.v_type3 .cate_box{
    background-color: #fff;
    border-radius: 20px;
}

/* タブレット */
@media screen and (max-width: 768px){
    .v_type3 .cate_wrap,.v_type3 .cate_box{margin-bottom:30px;}
    .v_type3 .cate_box{margin-bottom: 30px;}
    .v_type3 .box_img{width: 30%!important;}
    .v_type3 .box_txt{width: 100%!important;}
}
/* スマホ */
@media screen and (max-width: 667px){
    .v_type3 .cate_wrap{margin-bottom: 30px;}
    .v_type3 .cate_wrap .cate_box{margin-bottom:30px;}
    .v_type3 .box_img{width: 75%!important;}
    .v_type3 .box_txt{width: 100%!important;}
}

/* 閉じるボタン付き追従バナー */
.fix_banner{
	max-width: 240px;
	position: fixed;
	bottom: 10px;
	right: 60px;
	z-index: 3;
	transition: 0.5s;
}
.fix_banner .close_bt{
	position: absolute;
	bottom: 100px;
    right: 0px;
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	transition: 0.5s;
	background-color: #fff;
	border: solid 2px #e1bebe;
	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: #2143a3;
	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 {opacity: 0;z-index: -1;
}
.fix_banner.close2{opacity: 0;z-index: -1;}

@media  screen and (max-width: 768px){
.fix_banner{max-width: 300px;right: 50px;}
.fix_banner .close_bt{bottom: 100px;right: 0px;}
}

@media  screen and (max-width: 667px){
.fix_banner{
    max-width: 160px;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}
.fix_banner .close_bt{
	width: 25px;
	height: 25px;
	bottom: 50px;
	right: 0px;
}
.fix_banner .close_bt span{
	width: 25px;
	height: 25px;
}
.fix_banner .close_bt span:before, .fix_banner .close_bt span:after{height: 2px;}
}
/* 閉じるボタン付き追従バナー end */