﻿/*===========================================================*/
/* 個別 */
/*===========================================================*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500&family=Noto+Sans+JP:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500&display=swap');
body{
        font-family: 'Montserrat',"Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
        font-weight: 500;
}
.font1,#intro .intro_photo h2,.slash,.intro_title2,.cms_title h3,#pc_nav li a, #footer_nav li a,.more_item .text,#cms_5-b .cate_box .open_bt .box_title1::before, .cms_5-b .cate_box .open_bt .box_title1::before,footer .info_btn_wrap p,.overlay .overlay-nav .top .jp,.overlay .overlay-nav .bottom a .en,.overlay .overlay-nav .middle li a .jp,.flow_type3 .box_title1::before,#page_title .jp,#main_img .scr, #page_title_img .scr,#page10 li a,#loading #loading_text .progressbar-text{font-family: 'Oswald', sans-serif;}
#page_title .en{    font-family: 'Noto Sans JP', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.linkStyle{color: #333;border-bottom: 1px solid;}
.filter2{background-color: #386658;}
#loading{background-color: #282828;}
#cms_5-b .cate_box .box_item,
.cms_5-b .cate_box .box_item{
    padding-left: 0;
}
#cms_5-b .cate_box .box_item .box_txt1,
.cms_5-b .cate_box .box_item .box_txt1{
    display: inline-block;
    position: relative;
    margin-left: 110px;
    letter-spacing: 1px;
}
#cms_5-b .cate_box .box_item .box_txt1::before,
.cms_5-b .cate_box .box_item .box_txt1::before
{
	content: "A.";
	position: absolute;
	left: -32px;
	top: 0px;
	display: inline-block;
	vertical-align: baseline;
}
.catch{font-size: 70px;font-size: 70px;
    width: 100%;
    text-align: center;
    line-height: 1;
}
#intro_wrap .con_bg{
    width: 100%;
    height: 100%;
    top: -7%;
    left: -10%;
    z-index: 0;
    background-color: #72777D;
    opacity: 0.1;
}
#contents_wrap .slash {
    color: #386658;
}
#contents_wrap .box1,#contents_wrap .box2{margin-bottom: 250px;}
.con_title{color: #434F6D;}
.con_img2,.box3 .con_img2 {
    width: 50%;
    max-width: 400px;
    bottom: -26%;
    right: -5%;
    z-index: 3;
    display: none;
}
.box2 .con_img2{right: inherit;left: -5%;}
.con_bg {
    width: 110%;
    height: 100%;
    bottom: -10%;
    left: 20px;
    z-index: 0;
    background-color: #72777D;
    opacity: 0.1;
}
.box2 .con_bg{
    left: inherit;
    right: 20px;
}
.top_title{width: 95%;}
.top_title02{margin-left: auto;}
.top_title::after {
    content: none;
    position: absolute;
    bottom: -40px;
    left: 0;
    width: 70%;
    height: 10vh;
    background: #386658;
    z-index: 2;
}
.top_title02::after{
    right: 0;
    left: inherit;
}
/*===========================================================*/
/* コード集 */
/*===========================================================*/
/* ---------- loopSlider ---------- */
#topcms_gallery_type1 .loopSliderWrap{
    top: 0;
    left: 0;
    height: 450px;
}
#topcms_gallery_type1 .loopSlider {
    margin: 0 auto;
    height: 450px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
#topcms_gallery_type1 .loopSlider .ul {
    height:450px;
    float: left;
    overflow: hidden;
}
#topcms_gallery_type1 .loopSlider .ul .li {
    width: 450px;
    height: 450px;
    float: left;
    display: inline;
    overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding: 0;
}
#topcms_gallery_type1 .loopSlider .ul .li img{
    border-radius: 0;
}
#topcms_gallery_type1 .loopSliderWrap:after {
    content: "";
    display: none;
    clear: none;
}

/*リンクボタン*/
#topcms_gallery_type1 .btn{z-index: 3;}
#topcms_gallery_type1 .btn a::before {
    content: '';
    position: absolute;
    bottom: 55px;
    right: 27%;
    width: 42%;
    height: 1px;
    background: #333;
    transition: all .3s;
}
#topcms_gallery_type1 .btn a::after {
    content: '';
    position: absolute;
    bottom: 60px;
    right: 27%;
    width: 15px;
    height: 1px;
    background: #333;
    transform: rotate(35deg);
    transition: all .3s;
}
#topcms_gallery_type1 .btn a:hover::before {
    right: 16%;
    background: #fff;
}
#topcms_gallery_type1 .btn a:hover::after {
    right: 15%;
    background: #fff;
}
#topcms_gallery_type1 .btn {
    display: block;
}
#topcms_gallery_type1 .btn a {
    background: #fff;
    color: #212121;
    width: 200px;
    height: 200px;
    display: flex;
    align-content: center;
    justify-content: center;
    border-radius: 50%;
    flex-wrap: wrap;
    transition: all 0.4s;
}
#topcms_gallery_type1 .btn a:hover {
    background: #1c1c1c;
    color: #fff;
}
#topcms_gallery_type1 .btn a span, .btn a strong {
    text-align: center;
}
@media(max-width: 768px) {
#topcms_gallery_type1,#topcms_gallery_type1 .loopSliderWrap,#topcms_gallery_type1 .loopSlider,#topcms_gallery_type1 .loopSlider ul,#topcms_gallery_type1 .loopSlider .ul .li{
	height: 280px;
}
#topcms_gallery_type1 .loopSlider .ul .li{
    width: 280px;
}
#topcms_gallery_type1 {
    padding-bottom: 0;
    padding-top: 0;
}
}
@media(max-width: 667px) {
#topcms_gallery_type1,.loopSliderWrap,.loopSlider,.loopSlider .ul,.loopSlider .ul .li{
	height: 179px!important;
}
#topcms_gallery_type1 .loopSlider .ul .li{
    width: 179px;
}
#topcms_gallery_type1 .btn a::after {
    bottom: 35px;
    right: 27%;
}
#topcms_gallery_type1 .btn a::before {
    bottom: 30px;
    right: 27%;
}
#topcms_gallery_type1 .btn a {
    width: 140px;
    height: 140px;
    line-height: 1.7;
}
#topcms_gallery_type1 {
    padding-bottom: 100px;
    padding-top: 0;
}
}

/* 最後まで行ったら、矢印透過する */
.topcms_news_type3 .slick-disabled{
	opacity: 0.3;
}
/* 要素の高さを合わせる */
.topcms_news_type3 .slick-slide {
	height: auto !important;
}
.topcms_news_type3 .slick-track {
	display: flex;
}

/*レイアウト変更*/
.topcms_news_type3 .slick-slide{
    padding:10px;
}

.topcms_news_type3 .slick-slide:nth-child(2n){
    padding-top:40px;
}
.topcms_news_type3 .slick-slide:nth-child(3n){
    padding-top:70px;
}

.flow_type3 .cate{counter-reset: box;}
.flow_type3 .cate_box{counter-increment: box;}
.flow_type3 .box_item{padding-top: 60px;}
.flow_type3 .box_title1{z-index: 0}
.flow_type3 .box_title1::before, .flow_type3 .box_title1::after{
	position: absolute;
	content: "";
	display: block;
	pointer-events: none
}
.flow_type3 .box_title1::before {
	content: "0"counter(box);
	font-size: 86px;
	color: #ebebeb;
	left: 0;
	top: -70px;
	z-index: -1;
}
.flow_type3 .box_title1::after{
	width: 100%;
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: #222
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
.flow_type3 .box_title1::before{
	left: auto;
	right: 0;
	top: -50px
}
.flow_type3 .box_item {
    padding-top: 36px;
}
}

.g_type1 > div{justify-content: space-around;}
.g_type1 .modal_bt{cursor: pointer}
.g_type1 .modal_bg{top: 0;left: 0;background-color: rgba(0,0,0,0.5);z-index: 9998;height: 100vh;}
.g_type1 .modal_box{max-height: 80%;overflow-y: auto;z-index: 9999;}
.g_type1 .close_bt{cursor: pointer}
.g_type1 .cate_box {position: relative;width: 22.99999%!important;margin: 0 1%;margin-bottom: 20px;overflow: hidden; }

@media all and (-ms-high-contrast:none){
.g_type1 .modal_box .box_txt2 a {padding: 8px 10px 2px;}
}

@media screen and (max-width: 768px){
.g_type1 .cate_box {width: 30.99999%!important;}
}
	
@media screen and (max-width: 667px){
.g_type1 .cate_box {width: 47.99999%!important;}
}

/*===========================================================*/
/* 下層 */
/*===========================================================*/





/*===========================================================*/
/* タブレット */
/*===========================================================*/
@media screen and (max-width: 768px){
#contents_wrap .box1, #contents_wrap .box2 {
    margin-bottom: 100px;
}
#contents_wrap{margin-bottom: 0;}
.top_title::after {
    bottom: -20px;
    height: 5vh;
}
.menu-trigger{top: 65%;}
.close-trigger{top: 85%;}
#intro .intro_photo h2 {
    left: -20px;
}
.border_claer_tb{border: none;}
#logo a img{max-width: 300px;}


}



/*===========================================================*/
/* スマホ */
/*===========================================================*/
@media screen and (max-width: 667px){
.modal-box .modal-close span {
    display: block;
    width: 30px;
    height: 30px;
    position: relative;
}
.top_title {
    width: 100%;
}
#footer_info .info_txt{font-size: 14px;}
#logo a img {
    max-width: 230px;
}
}


/*===========================================================*/
/* IE */
/*===========================================================*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none){



}


/*===========================================================*/
/* Firefox */
/*===========================================================*/
@-moz-document url-prefix(){

}