@charset "UTF-8";

/* CSS Document */

/* XXXXXXXXXXX  root階層用  XXXXXXXXXXX */


/* border-boxを全ての要素に適用 */
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}



/* XXXXXXXXXXXXXXXXXXXXXXXX  image  XXXXXXXXXXXXXXXXXXXXXXXX */
div.ccm-page img {
	/*max-width: 100%;*/
	width: 100%;
	height: auto;
	vertical-align: bottom;
}


div.ccm-page a img {
	border-width: 0px;
	border-style: none;
	border-color: #fff;
	background: transparent;
}
div.ccm-page a img:hover {
	opacity: 0.6;
    -ms-filter: "alpha(opacity=60)";
	filter: alpha(opacity=60);
}

/* PCとモバイルでの画像切り替え用*/
.img-mb {
    display: none;
}




/* XXXXXXXXXXXXXXXXXXXXXXXX  video  XXXXXXXXXXXXXXXXXXXXXXXX */

div.ccm-page .video1 {
    width: 1140px;
    /*iPhone safariの枠線を消す*/
    filter: drop-shadow(0px 0px #000);
    /*PCのChromeの枠線を消す*/
    outline: none;
    border: none;
}

div.ccm-page video {
    /*iPhone safariの枠線を消す*/
    filter: drop-shadow(0px 0px #000);
    /*PCのChromeの枠線を消す*/
    outline: none;
    border: none;
}

div.ccm-page video.video1_main {
    width: 100%;
    max-width: 1140px;
    /*iPhone safariの枠線を消す*/
    filter: drop-shadow(0px 0px #000);
    /*PCのChromeの枠線を消す*/
    outline: none;
    border: none;
}

div.ccm-page .video2 {
    width: 100%;
    max-width: 500px;
    /*iPhone safariの枠線を消す*/
    filter: drop-shadow(0px 0px #000);
    /*PCのChromeの枠線を消す*/
    outline: none;
    border: none;
}



/* XXXXXXXXXXXXXXXXXXXXXXXX  wrap  XXXXXXXXXXXXXXXXXXXXXXXX */


div.ccm-page {
	width: auto;
}

div.ccm-page .wrap-all {
	width: auto;
    margin: 0;
    padding: 0;
}





/* XXXXXXXXXXXXXXXXXXXXXXXX  header  XXXXXXXXXXXXXXXXXXXXXXXX */

/* xxxxxxxxxxxx  header 1  xxxxxxxxxxxx */
div.ccm-page header {
	width: auto;
	margin: 0;
	padding: 0;
}
div.ccm-page .wrap-head {
	width: 100%;
	height: 114px;
	background-image: url("../images/head-back.png");
	background-repeat: repeat-x; 
	background-size: contain;
}
div.ccm-page .wrap-head-inner {
	width: 1140px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	position: relative;
}
div.ccm-page .head-logo {
	width: 300px;
	height: 114px;
}
div.ccm-page .head-text {
	font-family: "Folk Medium";
	width: 250px;
	color: #FFFFFF;
	font-size: 1.1rem;
	text-align: right;
	margin-top: 63px;



}


/* .head-menuは下記hamburger menu部に記述 */






/* xxxxxxxxxxxx  header 2 nav  xxxxxxxxxxxx */
div.ccm-page .wrap-gnav {
	width: 100%;
	height: 46px;
	margin: 0;
	padding: 0;
	background-color: #1e5199;
	z-index: 10;
    position: relative;
}
div.ccm-page .wrap-gnav-inner {
	width: 1140px;
	margin: 0 auto;
}


/* ------- gnav ------- */
div.ccm-page .wrap-gnav-inner ul{
	margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
}
div.ccm-page .wrap-gnav-inner ul li{
	position: relative;
    
    text-align: center;
    list-style: none;
    font-size: 1rem;
    border: 1px solid #FFFFFF;
}
div.ccm-page .wrap-gnav-inner ul li+ li {
    border-left: 0;
    border-right: 1px solid #FFFFFF;
}
div.ccm-page .wrap-gnav-inner ul li a{
	display: block;
	text-align: center;
	text-decoration: none;
	color: #FFF;
	padding: 0;
	width: 184px;
	height: 44px;
	line-height: 44px;
}
div.ccm-page .wrap-gnav-inner ul li a:hover{
	color: #FF0;
	background-color: #CC0000;
}


/* xxxxxxxxxxxx  hamburger menu (.head-menu)xxxxxxxxxxxx */
div.ccm-page .head-menu {
	visibility: hidden;
    
    position: absolute;
    top: 45px;
    right: 20px;
    
    width: 40px;
    height: 40px;
	margin: 10px auto;
    /*border: solid 1px #333333;*/
    /*padding: 5px;*/
    background-color: #FFFFFF;
	border-radius: 2px;
    z-index: 16;
    cursor: pointer;
}
div.ccm-page .head-menu span { /*3本の線*/
    display: block;
    transition: all .3s; /**/
    /*position: absolute;*/
    width: 80%;
    height: 4px;
    border-radius: 2px;
    margin: 7px 4px;
    background-color: #666666;
    z-index: 18;
}
div.ccm-page .head-menu.open span:nth-of-type(1) {
    transform: translate(1px, 12px) rotate(45deg);
}
div.ccm-page .head-menu.open span:nth-of-type(2) {
    opacity: 0; /*透明に*/
}
div.ccm-page .head-menu.open span:nth-of-type(3) {
    transform: translate(1px, -10px) rotate(-45deg);
}









/* XXXXXXXXXXXXXXXXXXXXXXXX  article  XXXXXXXXXXXXXXXXXXXXXXXX */

/* xxxxxxxxxxxx  article title  xxxxxxxxxxxx */
div.ccm-page .title1 {
	width: auto;
	height: 70px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #AF0000;
	border-left-width: 10px;
	border-left-style: solid;
	border-left-color: #AF0000;
	background-color: #F0DFD5;
	
	padding-left: 22px;
	margin: 60px 0 40px 0;
	display: flex;
	align-items: center;
}






/* xxxxxxxxxxxx  article conte  xxxxxxxxxxxx */
div.ccm-page article {
	width: auto;
	margin: 0;
	padding: 0;
}

div.ccm-page .wrap-full-conte {
	width: 100%;
}
div.ccm-page .wrap-conte {
	width: 1140px;
	margin: 0 auto;
    padding: 0;
}


div.ccm-page .conte-inner {
	width: 100%;
	padding: 15px;
	/*margin: 15px 0;*/
}
/* div.ccm-page .conte-inner-text {
	width: 100%;
	padding: 20px;
}*/



/* ------ 背景色 ------ */
div.ccm-page .wrap-arti-back {
	width: 100%;
	background-color: #f3f1e9;
	margin: 20px 0px 30px 0;
	padding: 15px;
}

div.ccm-page .com-back-red {
	background-color: #e60012;
}
div.ccm-page .com-back-blue {
	background-color: #1e5199;
}




/* ------ flex ------ */
div.ccm-page .flex-container-s-around { /* flexのコンテナー　space around */
	width: 100%;
	display: flex;
	justify-content: space-around;
}
div.ccm-page .flex-container-s-between { /* flexのコンテナー　space between */
	width: 100%;
	display: flex;
	justify-content: space-between;
}

div.ccm-page .flex-item-2box { /* flexのアイテム　2ボックス用 */
	width: 48%;
}
div.ccm-page .flex-item-3box { /* flexのアイテム　3ボックス用 */
	width: 31%;
}

 






/* XXXXXXXXXXXXXXXXXXXXXXXX  footer  XXXXXXXXXXXXXXXXXXXXXXXX */

/* ------- foot ------- */
div.ccm-page footer {
	width: auto;
	margin: 0;
	padding: 0;
}


div.ccm-page .wrap-foot {
	width: 100%;
	margin-top: 30px;
	padding: 30px 0;
	background-color: #af0000;
	color: #FFFFFF;
}
div.ccm-page .wrap-foot-inner {
	width: 1140px;
	margin: 0 auto;
}
div.ccm-page .wrap-foot-nav-and {
	width: 100%;
	padding: 0px;
    display: flex;
    justify-content: space-between;
}
div.ccm-page .foot-logo {
	width: 170px;
	height: 85px;
}
div.ccm-page .loot-logo-inner { /* フッターロゴ画像 */
	width: 150px;
}

div.ccm-page .wrap-foot-nav { /* フッターのナビ */
	width: 700px;
}
div.ccm-page .wrap-foot-nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
div.ccm-page .wrap-foot-nav ul li {
    text-align: center;
    list-style: none;
    font-size: 0.9rem;
}
div.ccm-page .wrap-foot-nav ul li a {
    display: block;
    margin: 5px;
    padding: 10px 15px;
    text-decoration: none;
    color: #FF9999;
}
div.ccm-page .wrap-foot-nav ul li a:hover {
    background-color: #CD2D2D;
    color: #FFFF00;
}

div.ccm-page .foot-info { /* フッター連絡先等 */
	width: 170px;
	height: 85px;
	font-size: 0.75rem;
}
div.ccm-page .wrap-foot-text { /* フッター　コピーライト */
	width: 100%;
	font-size: 0.9rem;
}







/* XXXXXXXXXXXXXXXXXXXXXXXX  ETC  XXXXXXXXXXXXXXXXXXXXXXXX */


/* ------- clear ------- */
div.ccm-page .bo_clear {
	clear: both;
}


/* 「別ウインドウへのリンク」にFontAwesomeアイコンを自動で入れる */
/* fontawesome ver.4用＝　font-family: "FontAwesome";*/
/*
div.ccm-page a[target="_blank"]::after{
  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-size: 1em;
  font-weight: 900;
  margin: 0 3px;
}
*/


/* --------- button1 --------- */
div.ccm-page .generalbtn1 {
	margin: 5px;
}
div.ccm-page .generalbtn1 a {
	display: inline-block;
	text-align: center;
	width: 260px;
	height: 45px;
	text-decoration: none;
	background-image: linear-gradient(360deg, rgba(244, 213, 164, 1), rgba(255, 255, 255, 1) 50%, rgba(244, 213, 164, 1));
	color: #954209;
	padding: 0px;
	line-height: 45px;
}
div.ccm-page .generalbtn1 a:hover {
	color: #FFFF00;
	font-weight: bold;
	background-image: linear-gradient(360deg, rgba(185, 0, 30, 1), rgba(255, 166, 166, 1) 40%, rgba(255, 166, 166, 1) 60%, rgba(185, 0, 30, 1));
}


div.ccm-page .generalbtn2 {
	margin-left: 5px;
}
div.ccm-page .generalbtn2 a {
	display: inline-block;
	text-align: center;
	width: 260px;
	height: 45px;
	text-decoration: none;
	background-image: linear-gradient(360deg, rgba(209, 223, 241, 1), rgba(255, 255, 255, 1) 40%, rgba(255, 255, 255, 1) 60%, rgba(209, 223, 241, 1));
	
	padding: 0px;
	line-height: 45px;
}
div.ccm-page .generalbtn2 a:hover {
	color: #9F2D02;
	font-weight: bold;
	background-image: linear-gradient(360deg, rgba(255, 184, 191, 1), rgba(255, 255, 255, 1) 40%, rgba(255, 255, 255, 1) 60%, rgba(255, 184, 191, 1));
}

  







/* エラー404 */
div.ccm-page .err404-1 {
    width: 80%;
    margin: 0 auto;
    text-align: center;
}
div.ccm-page .err404-2 {
    width: 60%;
    margin: 0 auto;
    text-align: center;
}
div.ccm-page .err404-3 {
    width: 40%;
    margin: 0 auto;
}


/* 天地スペース */
div.ccm-page .space20 {
	width: auto;
	height: 20px;
}
div.ccm-page .space40 {
	width: auto;
	height: 40px;
}
div.ccm-page .space60 {
	width: auto;
	height: 60px;
}
div.ccm-page .space80 {
	width: auto;
	height: 80px;
}
div.ccm-page .space100 {
	width: auto;
	height: 100px;
}
div.ccm-page .space120 {
	width: auto;
	height: 120px;
}





/* google map embed用 */
div.ccm-page .ggmap {
	position: relative;
	padding: 0 0 56%;
	height: 0;
	overflow: hidden;
    width: 80%;
    margin: 20px auto 40px auto;
}
div.ccm-page .ggmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}



/* jQueryでフワッと表示（下からフェードイン） */

div.ccm-page .inview {
    /* ●px下げる */
    transform: translateY(80px);
    /* 要素を透明にする */
    opacity: 0;
    /* ●秒かけて、変化させる */
    transition: transform 1s, opacity 1s;
  }
  
div.ccm-page .inview.show {
    transform: translateY(0);
    opacity: 1;
  }




/* インスタボタン等の表示 */
div.ccm-page .sns-icon-container {
	display: flex;
	justify-content: space-around;
	width: 300px;
	margin: 0 auto;
  }
/* アイコン置き */
div.ccm-page .sns-icon-item1 {
	width: 100px;
	text-align: center;
	display: flex;
	align-items: center;
  }
div.ccm-page .sns-icon-item2 {
	width: 140px;
	text-align: center;
	display: flex;
	align-items: center;
  }




/* tableを横スクロールさせる */
/* 左端項目も一緒にスクロールする */
div.ccm-page .scrl-horiz {
	overflow-x: auto;
	display: block;
}
div.ccm-page .scrl-horiz table th,
div.ccm-page .scrl-horiz table td {
	white-space: nowrap;
	padding: 7px;
}



/* PCでは見せて、モバイル時に見せない */
div.ccm-page .mobile-view01 { /* モバイル時のみ表示 */
		display: none;
	}





/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
/* XXXXXXXXXXXXXXXXXXXXXXXXX  RESPONSIVE 1  XXXXXXXXXXXXXXXXXXXXXXXXX */
/* xxxxxxxxxxxxxxxxxxxxx  for PC or big tablet  xxxxxxxxxxxxxxxxxxxxx */
/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */

@media only screen and (max-width: 1140px){
	
	/* XXXXXXXXXXXXXXXXXXXXXXXX  video  XXXXXXXXXXXXXXXXXXXXXXXX */
	div.ccm-page .video1 {
		width: 100%;
	}
	div.ccm-page video.video1_main {
		width: 100%;
		max-width: 100%;
	}
	
	
	
	/* XXXXXXXXXXXXXXXXXXXXXXXX  wrap  XXXXXXXXXXXXXXXXXXXXXXXX */
	
	
	
	/* XXXXXXXXXXXXXXXXXXXXXXXX  header  XXXXXXXXXXXXXXXXXXXXXXXX */
	
	/* xxxxxxxxxxxx  header 1  xxxxxxxxxxxx */
	div.ccm-page .wrap-head-inner {
		width: 100%;
	}
	div.ccm-page .head-logo {
		margin-left: 20px;
	}
	div.ccm-page .head-text {

	margin-right: 80px;
}
	
	
    
	
	/* xxxxxxxxxxxx  header 2 nav  xxxxxxxxxxxx */
	div.ccm-page .wrap-gnav-inner {
		width: 100%;
	}
	
	/* ------- gnav ------- */
	div.ccm-page .wrap-gnav { /* グローバルメニューバックのラッパー */
        width: 100%;
        height: auto;
        margin: 0 auto;
        padding: 20px;
        display: none;
    }
    
    div.ccm-page .wrap-gnav-inner ul {
        display: flex;
        flex-wrap: wrap;
      
}

   div.ccm-page .wrap-gnav-inner ul li {
	   
	   
	   border: 1px solid #FFFEFF;
       border-radius: 3px;
	   margin: 3px;

}
   div.ccm-page .wrap-gnav-inner ul li+ li {
       border-left: 1px solid #FFFEFF;
       border-right: 1px solid #FFFEFF;
	}
   div.ccm-page .wrap-gnav-inner ul li a {
	   width: 145px;
       padding: 2px 5px;
	}
	
	
	
	
	/* xxxxxxxxxxxx  hamburger menu (.head-menu)xxxxxxxxxxxx */
	/* head-menu */
    div.ccm-page .head-menu {
        visibility: visible;
    }
	
	
	
	
	
	/* XXXXXXXXXXXXXXXXXXXXXXXX  article  XXXXXXXXXXXXXXXXXXXXXXXX */

	/* xxxxxxxxxxxx  article title  xxxxxxxxxxxx */
	/*div.ccm-page .title1 {
		width: auto;
		height: 70px;
	}*/
	
	
	
	/* xxxxxxxxxxxx  article conte  xxxxxxxxxxxx */
	div.ccm-page .wrap-conte {
	width: 100%;
	margin: 0 auto;
    padding: 0 15px;
}

	
	
	
	
	/* XXXXXXXXXXXXXXXXXXXXXXXX  footer  XXXXXXXXXXXXXXXXXXXXXXXX */

	/* ------- foot ------- */


div.ccm-page .wrap-foot-inner {
	width: 100%;
}
div.ccm-page .wrap-foot-nav-and {
	flex-wrap: wrap;
	justify-content: center;
}

div.ccm-page .wrap-foot-nav { /* フッターのナビ */
	width: 100%;
	margin-bottom: 20px;
}
	
div.ccm-page .wrap-foot-nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
div.ccm-page .wrap-foot-nav ul li {
    text-align: center;
    list-style: none;
    font-size: 0.9rem;
}
div.ccm-page .wrap-foot-nav ul li a {
    display: block;
    margin: 5px;
    padding: 10px 15px;
    text-decoration: none;
    color: #FF9999;
}
div.ccm-page .wrap-foot-nav ul li a:hover {
    background-color: #CD2D2D;
    color: #FFFF00;
}

div.ccm-page .foot-info { /* フッター連絡先等 */
	text-align: center;
}
div.ccm-page .wrap-foot-text { /* フッター　コピーライト */
	width: 100%;
	padding: 0 15px;
}
	
	
	
	
}








/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
/* XXXXXXXXXXXXXXXXXXXXXXXXX  RESPONSIVE 2  XXXXXXXXXXXXXXXXXXXXXXXXX */
/* xxxxxxxxxxxx  for small tablet and middle smartphone 1  xxxxxxxxxx */
/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */

@media only screen and (max-width: 900px){
    .img-pc {
        display: none;
    }
    .img-mb {
        display: block;
    }




}







/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
/* XXXXXXXXXXXXXXXXXXXXXXXXX  RESPONSIVE 3  XXXXXXXXXXXXXXXXXXXXXXXXX */
/* xxxxxxxxxxxx  for small tablet and middle smartphone 2 xxxxxxxxxxxx */
/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */

@media only screen and (max-width: 768px){
	
	
	
	
 
	/* XXXXXXXXXXXXXXXXXXXXXXXX  article  XXXXXXXXXXXXXXXXXXXXXXXX */

	/* xxxxxxxxxxxx  article title  xxxxxxxxxxxx */
	
	
	/* xxxxxxxxxxxx  article conte  xxxxxxxxxxxx */
    div.ccm-page .flex-container-s-around { /* flexのコンテナー　space around */
		flex-wrap: wrap;
	}
	div.ccm-page .flex-container-s-between { /* flexのコンテナー　space between */

		flex-wrap: wrap;
	}
	
	
	div.ccm-page .flex-item-2box {
		width: 100%;
	}
	div.ccm-page .flex-item-3box {
		width: 100%;
	}
	


/* XXXXXXXXXXXXXXXXXXXXXXXX  ETC  XXXXXXXXXXXXXXXXXXXXXXXX */

	/* PCでは見せて、モバイル時に見せない */
	div.ccm-page .mobile-view01 { /* モバイル時のみ表示 */
		display: block;
	}

	

}






/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
/* XXXXXXXXXXXXXXXXXXXXXXXXX  RESPONSIVE 4  XXXXXXXXXXXXXXXXXXXXXXXXX */
/* xxxxxxxxxxxx  for small tablet and middle smartphone 3 xxxxxxxxxxxx */
/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */

@media only screen and (max-width: 650px){
	
	/* XXXXXXXXXXXXXXXXXXXXXXXX  header  XXXXXXXXXXXXXXXXXXXXXXXX */
	
	/* xxxxxxxxxxxx  header 1  xxxxxxxxxxxx */
	div.ccm-page .head-text {
		display: none;
	}
	
	
	
 
    
}





/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
/* XXXXXXXXXXXXXXXXXXXXXXXXX  RESPONSIVE 5  XXXXXXXXXXXXXXXXXXXXXXXXX */
/* xxxxxxxxxxxxxxxxxxxxx  for small smartphone 2  xxxxxxxxxxxxxxxxxxxxx */
/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */

@media only screen and (max-width: 500px){
	
	/* XXXXXXXXXXXXXXXXXXXXXXXX  header  XXXXXXXXXXXXXXXXXXXXXXXX */

	/* xxxxxxxxxxxx  header 1  xxxxxxxxxxxx */

	div.ccm-page .wrap-head {
		height: 74.1px;
	}

	div.ccm-page .head-logo {
		width: 195px;
		height: 74.1px;
	}

	
	/* xxxxxxxxxxxx  header 2 nav  xxxxxxxxxxxx */
	
	/* ------- gnav ------- */
	
	/* xxxxxxxxxxxx  hamburger menu (.head-menu)xxxxxxxxxxxx */
	div.ccm-page .head-menu {
		top: 20px;
	}
	



}






/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
/* XXXXXXXXXXXXXXXXXXXXXXXXX  RESPONSIVE 6 XXXXXXXXXXXXXXXXXXXXXXXXX */
/* xxxxxxxxxxxxxxxxxxxxx  for small smartphone 3  xxxxxxxxxxxxxxxxxxxxx */
/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */

@media only screen and (max-width: 330px){

/* xxxxxxxxxxxx  ETC  xxxxxxxxxxxx */

  /* インスタボタン等の表示 */
	div.ccm-page .sns-icon-container {
		
		width: 100%;
		flex-direction: column;
		align-items: center;
		
	}



}

