/*! normalize.css v2.0.1 | MIT License | git.io/normalize.css */

/* =============================================================================
   HTML5 display definitions
   ========================================================================== */

/ * Corrects block display not defined in IE8/9. */

article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary {display: block}

/* Corrects inline-block display not defined in IE8/9. */

audio,canvas,video {display : inline-block}
    
/* Prevents modern browsers from displaying 'audio' without controls */

audio:not([controls]) { display: none;height: 0}

/* Addresses styling for 'hidden' attribute not present in IE8/9. */

[hidden] {display: none}


/* =============================================================================
   Base
   ========================================================================== */

/* 1. Sets default font family to sans-serif.
 * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom. */

html {
    font-family: sans-serif; /* 1 */
/* 日本語のfont-familyへの対応 */
    font-family: "Hiragino Kaku Gothic Pro","Yu Gothic","Meiryo",sans-serif;
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */}

/* Removes default margin. */
body { margin : 0}

h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre { margin: 0 ;} /*上方向のmarginを0にします */

p {line-height: 1.8em;}

ul, li{
	margin: 0;
	padding: 0;
	text-decoration: none;
	list-style:none;
}

/* =============================================================================
   Links
   ========================================================================== */

/* Addresses `outline` inconsistency between Chrome and other browsers. */

a:focus { outline: thin dotted}

/* Improves readability when focused and also mouse hovered in all browsers. */

a:hover,a:active { outline : 0}


/* =============================================================================
   Typography
   ========================================================================== */

html { font-size: 75%} /* レスポンシブ   タイプセッティングへの対応 */

/* Addresses `h1` font sizes within `section` and `article` in Firefox 4+, Safari 5, and Chrome. */

/* 禁則処理の追加 */
p,li,dt,dd,th,td,pre{
-ms-line-break: strict;
line-break: strict;
-ms-word-break: break-strict;
word-break: break-strict}

/*Addresses styling not present in IE 8/9, Safari 5, and Chrome.*/

abbr[title] { border-bottom : 1px dotted}

/* Addresses style set to `bolder` in Firefox 4+, Safari 5, and Chrome.*/

b, strong { font-weight : bold}

/*Addresses styling not present in Safari 5 and Chrome.*/
dfn { font-style: italic}

/*Addresses styling not present in IE 8/9.*/
mark { background: #ff0;
color: #000}

/* Corrects font family set oddly in Safari 5 and Chrome.*/
code, kbd, pre, samp {
font-family: monospace, serif;
font-size: 1em}

/*Improves readability of pre-formatted text in all browsers.*/
pre {
white-space: pre;
white-space: pre-wrap;
word-wrap: break-word}


/*Sets consistent quote types.*/
q {quotes: “\201C” “\201D” “\2018” “\2019”;}

/*Addresses inconsistent and variable font size in all browsers.*/
small {font-size: 80%;}

/*Prevents `sub` and `sup` affecting `line-height` in all browsers.*/
sub, sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline}

sup {top: -0.5em}
sub {bottom: -0.25em}


/*=================================================================
   Embedded content
=================================================================*/
/*Removes border when inside `a` element in IE 8/9.*/


img {
max-width :100%; /* フルードイメージへの対応 */
vertical-align: middle; /* 追加箇所 */
border: 0}

/* IE8 max-widthバグへの対応*/
/* .ie8 img{width: auto; height: auto} */

/* Corrects overflow displayed oddly in IE 9.*/
svg:not(:root) {overflow: hidden}


/* =============================================================================
   Figures
   ========================================================================== */

/*Addresses margin not present in IE6/7/8/9, S5, O11*/

figure {margin: 0}


/* =============================================================================
   Forms
   ========================================================================== */


/* Define consistent border, margin, and padding*/

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/* 1. Corrects color not being inherited in IE 8/9.
 2. Remove padding so people aren’t caught out if they zero out fieldsets. */

legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */}

/* 1. Corrects font family not being inherited in all browsers.
 * 2. Corrects font size not being inherited in all browsers.
 * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome */

button, input, select, textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 2 */
	margin: 0; /* 3 */}

/*Addresses Firefox 4+ setting `line-height` on `input` using `!important` in  the UA stylesheet.*/

button,input {line-height: normal; /* 1 */}

/* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`  and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type `input` and others. */

button,
input[type="button"],  /* 1 */
input[type="reset"], 
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */}/
}

/*Re-set default cursor for disabled elements. */
button[disabled],
input[disabled] {cursor: default}


/* 1. Addresses box sizing set to content-box in IE8/9
 * 2. Removes excess padding in IE8/9*/

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/*
 * 1. Addresses appearance set to searchfield in S5, Chrome
 * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof)
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/*
 * Removes inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */


input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none}

/* Removes inner padding and border in Firefox 4+. */
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0}

/* 1. Removes default vertical scrollbar in IE 8/9.
 * 2. Improves readability and alignment in all browsers. */
textarea {
overflow: auto; /* 1 */
vertical-align: top; /* 2 */}

.mb30 {
	margin-bottom: 30px;
}
/* =============================================================================
   Tables
   ========================================================================== */

/* 
 * Remove most spacing between table cells
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}
/* リセット記述終了 */

/* clearfix
------------------------------------------------------------*/
.clearfix:after {
	content: '';
	display: block;
	clear: both;
	height:0;
}

div,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre {
	box-sizing: border-box;	
}



/*以下共通パーツ-----------------------------------------------------------*/


.font1 {
	font-family: 'Timmana', sans-serif;
}
a:hover img {
	filter: alpha(style=0, opacity=50);
	opacity: 0.5;
}
a :hover {
	text-decoration: underline !important;
}
.white {
	color: #FFF;
}
.whitelink a {
	color: #FFF;
}
.black {
	color: #000;
}
.deconone {
	text-decoration: none;
}
.bordernone {
	border-top-style: none !important;
	border-right-style: none !important;
	border-bottom-style: none !important;
	border-left-style: none !important;
}
@media screen and (max-width: 800px) {
.spHidden{
	display: none !important;
}
}
/*wordpressのログイン中のヘッダーを消す*/
#wpadminbar {
	display: none;
}

/*wordpressのフッターのモバイル、PC切り替えボタンを消す*/
.pc-switcher{
	display: none;
}

html,body{
	position: relative;
  color: #000000;
}

.headBGDIV{
	position: absolute;
	width: 100%;
	background-color: #fff;
	height: 40vh;
	z-index: 2;
	display: table;
}
.footBGDIV{
	position: absolute;
	width: 100%;
	bottom: 0;
	background-color: #fff;
	height: 40vh;
	z-index: 1;
	display: table;
}
.container{
	position: relative;
	z-index: 10;
}

#page-list {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 120%;
}
#page-list a {
	background: rgba(204,204,204,0.9);
	text-decoration: none;
	color: #FFF;
	padding: 15px 20px;
	text-align: center;
	display: block;
	border-radius: 2em;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 0.8em;
}
#page-list a span {
	font-size: 0.65em;
}
#page-list a:hover {
	text-decoration: none !important;
	background: rgba(204,204,204,0.8);
}

.topHeaderLogo{
	width: 100%;
	max-width: 894px;
    margin: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;/*アイテムの折り返し 折り返さない:nowrap 折り返す:wrap*/
	flex-direction: row;/*アイテムの並び順 左：row 右：row-reverse*/
	align-items: center;/*垂直方向の位置 上下埋:stretch 上揃え:flex-start 上下中央揃:center*/
	margin-top: 10px;
}
.topHeaderLogoDIV1{
  width: 100%;
	max-width: 195px;
}
.topHeaderLogoDIV2{
  width: 100%;
	max-width: 203px;
}
.topHeaderLogoDIV3{
  width: 100%;
	max-width: 96px;
}
.topHeaderLogoDIV4{
  width: 100%;
	max-width: 123px;
}
.hborder {
	width: 100%;
	max-width: 1px;
}
/*#topLogo1{
	max-height: 70px;
	width: auto !important;
	display: block;
	margin: 10px auto 0 auto;
}
#topLogo2{
	max-height: 90px;
	width: auto !important;
	display: block;
	margin: 0 auto 0 auto;
}
#topLogo3{
	max-height: 80px;
	width: auto !important;
	display: block;
	margin: 0 auto 0 auto;
}
#topLogo4{
	max-height: 0px;
	width: auto !important;
	display: none;
	margin: 0 auto 0 auto;
}
#topLogo5{
	max-height: 80px;
	width: auto !important;
	display: block;
	margin: 5px auto 0 auto;
}*/

#topWrap #topMainvisualDIV #topTitle img {
  width: 100%
}

.backimg {
	width: 100%;
	height: auto;
	background: url("../images/top_back_img_1000.png") no-repeat;
	background-position: center;
	background-size: contain;
}

@media screen and (max-width: 799px) {
  
#topWrap #topMainvisualDIV #topTitle img {
  width: 90%
}

  .topHeaderLogo {
    padding-left: 10px;
    padding-right: 10px;
  }
  
  .catalog_grid {
    margin-left: 20px;
    margin-right: 20px;
  }
	.backimg {
		background: none; /* 画像を非表示にする */
	}
	
  
/*	#topLogo1{
	max-height: 50px;
	width: auto !important;
	display: block;
	margin: 8px auto 0 auto;
}
#topLogo2{
	max-height: 63px;
	width: auto !important;
	display: block;
	margin: 0 auto 0 auto;
}
#topLogo3{
	max-height: 55px;
	width: auto !important;
	display: block;
	margin: 5px auto 0 auto;
}
#topLogo4{
	max-height: 50px;
	width: auto !important;
	display: block;
	margin: 10px auto 0 auto;
}*/
/*.topHeaderLogoDIV1{
	width: 24%;
}*/

	
	.topHeaderLogoDIV1{
  margin-right: 10px;
}
.topHeaderLogoDIV2{
	margin-left: 10px;
  margin-right: 10px;
}
.topHeaderLogoDIV3{
  margin-left: 10px;
  margin-right: 10px;
	width: 100%;
	max-width: 70px;
}
.topHeaderLogoDIV4{
  margin-left: 10px;
}


}



#topMenuDIV{
	display: flex;
	flex-wrap: wrap;/*アイテムの折り返し 折り返さない:nowrap 折り返す:wrap*/
	flex-diretion: row;/*アイテムの並び順 左：row 右：row-reverse*/
	justify-content: space-between;
	align-items: stretch;/*垂直方向の位置 上下埋:stretch 上揃え:flex-start 上下中央揃:center*/
	width: 100%;
	max-width: 808px;
	margin: 0 auto 0 auto;
}
#topBTN1{
	width: 30%;
	height: auto;
}
#topBTN2{
	width: 30%;
	height: auto;
}
#topBTN3{
	width: 30%;
	height: auto;
}
#topMenuDIV li img{
	width: 100%;
	height: auto;
}





#topMainvisualDIV{
	width: 100%;
	max-width: 894px;
	margin: 2em auto 0 auto;
}
#topTitle img{
	width: 100%;
	max-width: 894px;
	display: block;
	margin: auto;
  vertical-align: bottom;
}
#topP0{
	width: 90%;
	margin: 3em auto 0 auto;
}
#topP1{
	width: 100%;
  max-width: 625px;
	margin: 30px auto 15px auto;
  padding-left: 20px;
  padding-right: 20px;
}
#topP2{
	width: 100%;
	max-width: 278px;
	margin: 15px auto 25px auto;
}
#topP3{
	width: 100%;
	max-width: 184px;
	margin: 15px auto 70px auto;
}
#topPrivacy{
	text-align: center;
	margin: 3em auto 2em auto;
}
#topPrivacy a{
	color: #000;
}
.toptxt01 {
	font-size: 30px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 15px;
	padding-bottom: 0;
	line-height: 100%;
}
.toptxt01title {
	font-size: 16px;
	font-weight: bold;
	margin-right: 10px;
	vertical-align: middle;
}
.toptxt02 {
	font-size: 24px;
	text-align: center;
	margin-top: 20px;
	margin-bottom: 20px;
}
.toptxt03 {
	font-size: 17px;
	text-align: center;
	font-weight: 200;
}
.toptxt03 a {
	color: #5D5D5D;
	text-decoration: none;
}
.toptxt03 a:hover {
	opacity: 0.5;
}
.footerCopy{
	text-align: center;
	font-size: 0.8em;
  color: #000000;
}

@media screen and (max-width: 639px) {
	.topFooterLogoDIV1{
		width: 30%;
	}
	.topFooterLogoDIV2{
		width: 50.0%;
	}
	.topFooterLogoDIV3{
		width: 30%;
	}
	.topFooterLogoDIV2 img{
		height: 55px;
	}
	.topFooterLogoDIV3 img{
		height: 40px;
	}
  
  

  

}





#contentMenuDIV{
	display: flex;
	flex-wrap: wrap;/*アイテムの折り返し 折り返さない:nowrap 折り返す:wrap*/
	justify-content: space-between;
	width: 100%;
	max-width: 894px;
	margin: 0 auto 0 auto;
	padding: 20px 0 0 0;
}
#contentBTN0{
	width: 22%;
	height: auto;
}
#contentBTN1{
	width: 22%;
	height: auto;
}
#contentBTN2{
	width: 22%;
	height: auto;
}
#contentBTN3{
	width: 22%;
	height: auto;
}
#contentMenuDIV li img{
	width: 100%;
	height: auto;
}

@media screen and (max-width: 639px) {
/*#contentBTN0{
	width: 12%;
	text-align: center;
}
#contentBTN1{
	width: 26%;
	text-align: center;
}
#contentBTN2{
	width: 24%;
	text-align: center;
}
#contentBTN3{
	width: 38%;
	text-align: center;
}
#contentMenuDIV li img{
	width: auto;
	height: 2.0em;
}*/
}
.commonTitle0 {
	padding: 0 0.1em;
}
.commonTitle0 img{
	width: auto;
	height: 2.5em;
	display: block;
	margin: 0.5em auto 1em auto;
}
@media screen and (max-width: 499px) {
	.commonTitle0 img{
		height: 2.5em;
	}
	
	#contentMenuDIV{
	padding: 10px 10px 10px 10px;
}
}
.commonTitle1 {
	padding: 0 0.5em;
}
.commonTitle1 img{
	width: auto;
	height: 3.5em;
	display: block;
	margin: 2em auto 2em auto;
}
@media screen and (max-width: 499px) {
	.commonTitle1 img{
		height: 2.5em;
	}
	
	#contentMenuDIV{
	padding: 20px 20px 20px 20px;
}
#contentBTN0{
	width: 49%;
	height: auto;
	margin-bottom: 2%;
}
#contentBTN1{
	width: 49%;
	height: auto;
	margin-bottom: 2%;
}
#contentBTN2{
	width: 49%;
	height: auto;
}
#contentBTN3{
	width: 49%;
	height: auto;
}
	
	
}

/*オンラインカタログ*/
.catDIV1{
	width: calc(100% - 2em);
	margin: 2em auto;
	max-width: 800px;
}
.catHeadDIV1{
	width: 100%;
	background-image:url(../../wp-content/themes/ice-pc/ijt2023/images/catalog-title-bg.gif);
	background-size: 5px 100% ;
	background-position: center center;
	background-repeat: repeat-x;
	color: #FFF;
	
}
.catHeadDIV1 h2{
	padding: 15px 15px 15px 15px;
	line-height: 20px;
	text-align: left;
	width: calc(100% - 85px);
	float: left;
	font-size: 25px;
	font-weight: normal;
}
.catHeadDIV1 h2 span{
	font-size: 25px;
}
.catHeadDIV1 p{
	padding: 0.5em;
	line-height: 15px;
	text-align: left;
	width: 75px;
	background-color: #FFF;
	color: #000;
	margin: 10px 10px 15px 0;
	float: right;
	text-align: center;
	font-size: 12px;
}
.catHeadDIV1 p span{
	font-size: 15px;
	font-weight: bold;
}
@media screen and (max-width: 499px) {
	.catHeadDIV1 h2{
		padding: 15px 10px 15px 10px;
		line-height: 16px;
		width: calc(100% - 75px);
		font-size: 20px;
	}
	.catHeadDIV1 h2 span{
		font-size: 20px;
	}
	.catHeadDIV1 p{
		padding: 0.3em;
		line-height: 14px;
		text-align: left;
		width: 65px;
		background-color: #FFF;
		color: #000;
		margin: 5px 5px 10px 0;
		float: right;
		text-align: center;
		font-size: 11px;
	}
	.catHeadDIV1 p span{
		font-size: 13px;
		font-weight: bold;
}
}
@media screen and (max-width: 419px) {
	.catHeadDIV1 h2{
		font-size: 18px;
		padding-top: 15px;
	}
	.catHeadDIV1 h2 span{
		font-size: 18px;
	}
	.toptxt01 {
	font-size: 18px !important;
}
	
	.topHeaderLogoDIV3{
	width: 100%;
	max-width: 50px;
}
	.hborder {
	width: 100%;
	max-width: 0.7px;
}
	

}

.catIMGDIVX1{
	display: flex;
	flex-wrap: wrap;/*アイテムの折り返し 折り返さない:nowrap 折り返す:wrap*/
	flex-diretion: row;/*アイテムの並び順 左：row 右：row-reverse*/
	justify-content: center;/*水平方向の位置を指定() 中央:center 左揃:flex-start 右揃:flex-end 両端の余白を空けずに均等:space-between*/
	align-items: center;/*垂直方向の位置 上下埋:stretch 上揃え:flex-start 上下中央揃:center*/
	padding: 2em 0;
	margin: auto;
}
.catIMGDIVX1DIV1{
	width: calc(50% - 2em);
	margin: 1em 1em;
	height: auto;
	display: block;

}
.catIMGDIVX1DIV60{
	width: calc(60% - 2em);
	margin: 1em 1em;
	height: auto;
	display: block;

}
.catIMGDIVX1DIV40{
	width: calc(40% - 2em);
	margin: 1em 1em;
	height: auto;
	display: block;

}
.catIMG1{
	display: block;
	width: 100%;
	
	height: auto;
	margin: 3em auto;
}
.catIMGTate4{
	max-width: 300px;
}
.catIMGTate3{
	max-width: 375px;
}
.catIMGTate2{
	max-width: 450px;
}
.catIMGTate1{
	max-width: 475px;
}
.catIMGSquare{
	max-width: 550px;
}
.catIMGYoko1{
	max-width: 700px;
}
.catIMGYoko2{
	max-width: 800px;
}

.catDetailDIV1{
	width: 100%;
	border-top:1px solid #CCC;
	border-bottom:1px solid #CCC;
	padding: 2em 0;
	display: flex;
	flex-wrap: wrap;/*アイテムの折り返し 折り返さない:nowrap 折り返す:wrap*/
	flex-diretion: row;/*アイテムの並び順 左：row 右：row-reverse*/
	justify-content: flex-start;/*水平方向の位置を指定() 中央:center 左揃:flex-start 右揃:flex-end*/
	align-items: center;/*垂直方向の位置 上下埋:stretch 上揃え:flex-start 上下中央揃:center*/
	margin: 0 0 80px 0;
}
.catDetailDIV2{
	width: calc(100% - 140px);
}
.catDetailDIV2 table{
	width: 100%;
}
.catDetailDIV2 table th{
	text-align: left;
	width: 100px;
	padding: 0.5em 1em 0.5em 0;
	line-height: 1.2em;
}
.catDetailDIV2 table td{
	text-align: left;
	padding: 0.5em 0.5em;
	line-height: 1.2em;
}
.catLogoDIV{
	width: 140px;
}
@media screen and (max-width: 419px) {
	.catIMG1{
		margin: 1em auto;
	}
	.catDetailDIV1{
		margin: 0 0 60px 0;
	}
	.catDetailDIV2{
		width: calc(100% - 70px);
	}
	
	.catDetailDIV2 table th{
		font-size: 0.9em;
		width: 45px;
		
	}
	.catDetailDIV2 table td{
		font-size: 0.9em;
	}
	.catLogoDIV{
		width: 70px;
	}
	.catIMGDIVX1{
		display: flex;
		flex-wrap: wrap;/*アイテムの折り返し 折り返さない:nowrap 折り返す:wrap*/
		flex-diretion: row;/*アイテムの並び順 左：row 右：row-reverse*/
		justify-content: center;/*水平方向の位置を指定() 中央:center 左揃:flex-start 右揃:flex-end 両端の余白を空けずに均等:space-between*/
		align-items: center;/*垂直方向の位置 上下埋:stretch 上揃え:flex-start 上下中央揃:center*/
		padding: 2em 0;
	}
	.catIMGDIVX1DIV1{
		width: 100%;
		margin: 1em 1em;
		height: auto;
		display: block;

	}

}
/*PES2とは*/
.pes2DIV1{
	width: calc(100% - 2em);
	margin: auto;
	max-width: 700px;
}
.pes2Map1{
	display: block;
	margin: 4em auto 2em auto;
	max-width: 600px;
	width: 100%;
	height: auto;

}
/*イベント概要*/
.genWrap{
	width: calc(100% - 2em);
	margin: auto;
	max-width: 800px;
}
.geneTitle1{
	width:80%;
	max-width: 480px;
	margin: auto;
	padding: 50px 0 0 0;
}
.geneTitle1 img{
	width:100%;
	height: auto;
}
.genP1{
	font-size: 2em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.2em;
	margin-top: 4em;
	text-align: center;
}
.genP2{
	font-size: 1.4em;
	color:#6e6e6e;
	font-weight: bold;
	line-height: 1.4em;
	margin-top: 4em;
	text-align: center;
}
.genP10{
	font-size: 1.5em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.4em;
	margin-top: 3.5em;
	text-align: center;
}
.genP3{
	font-size: 1.2em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.4em;
	margin-top: 3.0em;
	text-align: center;
}
#genP12{
	max-width: 400px;
	margin: 4em auto 0 auto;
	padding: 0 1em;
}
.genP8{
	border-top: #aaa solid 1px;
	font-size: 2.2em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.8em;
	text-align:center;
	padding-top: 3em;
	margin-top: 3em;
}
.genP4{
	font-size: 1.2em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.6em;
	text-align: left;
	
	padding-top: 1.5em;
}
.genDIV2{
	width: 96%;
	max-width: 800px;
	margin: 6em auto 0 auto;
	border: #aaa solid 1px;
	padding: 4em 8em;
}
.genP9{
	font-size: 1.8em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.8em;
	text-align: center;
	padding-top: 0;
	margin-top: 2.5em;
}
.genP5{
	font-size: 1.7em;
	color:#6e6e6e;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
	margin: 1em 0 0 0;

}
.genP11{
	font-size: 1.0em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.8em;
	text-align: center;
	padding-top: 0;
	margin-top: 1em;
}
.genP6{
	font-size: 1.2em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.6em;
	text-align: left;
	padding-top: 0;
	margin-top: 2em;
}
.genIMG1{
	width: 80%;
	max-width: 160px;
	height: auto;
	display: block;
	margin: 2em auto 0 auto;
}
.genP7{
	font-size: 1.1em;
	color:#6e6e6e;
	font-weight: normal;
	line-height: 1.8em;
	text-align: center;
	padding-top: 0;
	margin:2em auto 4em auto;
}
.genP7 span{
	color:#F00;

}
.genIMG2{
	width: 80%;
	max-width: 400px;
	display: block;
	margin: 4em auto 0 auto;
}


@media screen and (max-width: 599px) {
	.genP2{
		font-size: 1.2em;
	}
	.genP10{
		font-size: 1.2em;
	}
	.genP3{
		font-size: 1em;
	}
	.genP8{
		font-size: 1.8em;
	}
	.genP4{
		font-size: 1.0em;
	}
	.genP6{
		font-size: 1.0em;
	}
	
	
	.toptxt01 {
	font-size: 20px;
}
.toptxt01title {
	font-size: 13px;
}
.toptxt02 {
	font-size: 18px;
}
.toptxt03 {
	font-size: 14px;
	text-align: center;
	font-weight: 200;
}
	
#topP3{
	width: 100%;
	max-width: 140px;
}	
	.topHeaderLogoDIV4{
  width: 100%;
		max-width: 90px;
}
	
	.imgheight {
		width: 100%;
		max-width: 280px;
		height: auto;
	}
	
	
	
}








.indexDIV1 {
	padding: 0 0 80px 0;
}

.catalog_grid {
/*width: min(100%, 800px);
margin: 50px auto;
padding: 20px;
border: 1px solid #ee8392;*/
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
grid-gap: 30px;
}
.catalog_grid_item {
border:1px solid #A8BEE6;
background-color: #fff;
}
.catalog_grid_item_logo {
  height: 240px;
  display:flex;
  justify-content: center;
  align-items: center;
}
.catalog_grid_item_logo img {
  width: 80%;
	height: auto;
}
.catalog_grid_item_name {
  background-color: #123474;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.catalog_grid_item .catalog_grid_item_name h3 {
  font-size: 110%;
  padding: 10px;
	color: #D9DEEF;
	text-align: center;
}

.indexDIV1 a{
	text-decoration: none;
	color:#000;
	width: 100%;
	margin: auto;
	max-width: 800px;
	display: block;
}
.indexHeadTable{
	width: calc(100% - 1em);
	max-width: 800px;
	margin: 3em auto 0 auto;
	display: table;
	font-weight: bold;
}
.indexHeadTableTD1{
	padding: 1.5em 0.5em;
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	width: 100px;
	background-color: #fff;
	line-height: 1.2em;
	font-size: 1.1em;
}
.indexHeadTableTD2{
	padding: 1.5em 0.5em;
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	font-size: 1.1em;
	line-height: 1.5em;
	width: calc(100% - 100px);
}
.indexHeadTableTD3{
	padding: 1.5em 0.5em;
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	width: 120px;
	background-color: #fff;
	line-height: 1.2em;
	font-size: 1.1em;
}
.indexTable{
	width: calc(100% - 1em);
	max-width: 800px;
	margin: 0 auto 0 auto;
	display: table;
	border-top: 1px solid #eee;
}
.indexTableTD1{
	padding: 1.5em 0.5em;
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	width: 100px;
	background-color: #fff;
	line-height: 1.2em;
	font-size: 1.1em;
}
.indexTableTD2{
	padding: 1.5em 0.5em;
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	font-size: 0.9em;
	line-height: 1.5em;
	width: calc(100% - 100px);
}
.indexTableTD2 span{
	font-size: 1.7em;
}
.indexTableTD3{
	padding: 1.5em 0.5em;
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	width: 120px;
	background-color: #fff;
	line-height: 1.2em;
	font-size: 1.1em;
}
@media screen and (max-width: 499px) {
	.indexHeadTableTD1{
	padding: 1.5em 0.1em;
	width: 55px;
	letter-spacing: -1px;
}
.indexHeadTableTD2{
	padding: 1.5em 0.35em;
}
.indexHeadTableTD3{
	padding: 1.5em 0.35em;
	width: 60px;
}
	.indexTableTD1{
	padding: 1.5em 0.35em;
	width: 50px;
	font-size: 0.9em;
}
.indexTableTD2{
	padding: 1.5em 0.35em;
	font-size: 0.8em;
	line-height: 1.5em;
	letter-spacing: -1px;
}
.indexTableTD2 span{
	font-size: 1.4em;

}
.indexTableTD3{
	padding: 1.5em 0.35em;
	width: 60px;
	font-size: 0.9em;
}
}
/*個人情報保護規程*/
.privacyDIV1{
	width: calc(100% - 2em);
	margin: auto;
	max-width: 800px;
	padding: 0 0 80px 0;
}
.PrivacyTitle1{
	width:80%;
	max-width: 480px;
	margin: auto;
	padding: 50px 0 0 0;
}
.privacyP1{
	margin: 2em 0.5em 0.5em 0.5em;
}
.PrivacyP2{
	margin: 0 1.5em 0.5em 1.5em;
}
.PrivacyP3{
	margin: 0 1.5em 0.5em 1.5em;
}




.footerArea {
  margin-top: 100px;
  background-color: #ffffff;
  padding-top: 17px;
  padding-bottom: 17px;
	border-top: 1px solid #000000;
}
#topP4{
	width: 80%;
	max-width: 300px;
	display: block;
	margin: 10% auto 6.5% auto;
	text-align: center;
	border: 1px solid #000000;
	color: #000000;
	font-size: 1.2em;
	font-weight: bold;
}

#topP4 a{
	color: #000000;
}
.top_hp_link_tex {
	font-size: 120%;
	font-weight: 700;
	text-align: center;
	background-color: #ffffff;
	border: 2px solid #000000;
	width: 70%;
	padding: 10px;
	margin-top: 3em;
	margin-left: auto;
	margin-right: auto;
}
.top_hp_link_tex a {
	text-decoration: none;
	color: #000000 !important;
	transition: all 0.5s;
	opacity: 1;
}
.top_hp_link_tex a:hover {
	color: #8FAE55 !important;
}
.context_margin {
	margin: 3em 0;
}
.infoLogo{
	max-height: 120px;
	width: auto !important;
	display: block;
	margin: 0 auto 0 auto;
}
.boder_right1px {
}
.mb_40per {
	margin-bottom: 40%;
}

.catalog_box {
  width: 100%;
  max-width: 894px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 120px;
}
.catalog_box_grid {
  display: grid;
  gap: 0px;
  grid-template-columns: 2fr minmax(447px, 1fr);
  margin-bottom: 50px;
}
.catalog_box_grid .catalog_box_grid_main {
  background-color: #F0F0F0;
  border: 1px solid #E9E9E9;
}
.catalog_box_grid .catalog_box_grid_side {
  background-color: #F0F0F0;
  padding: 30px;
}
.catalog_box_grid .catalog_box_grid_side p {
  font-size: 16px;
  line-height: 180%;
  font-weight: 500;
}
.catalog_com_tex {
  margin-top: 0;
  margin-bottom: 50px;
}
.catalog_com_tex p {
  font-size: 14px;
  line-height: 200%;
}
.catalog_box h2 {
  font-size: 27px;
  font-weight: bold;
  margin-bottom: 30px;
	color: #D9DEEF;
	background-color: #123474;
	text-align: center;
	padding: 15px 0;
	line-height: 100%;
}

.catalog_com {  
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0px 0px;
  grid-template-areas:
    "comlogo comtex1 comtex1";
	.comlogo {
  text-align: center;
}
  margin: 0 0 30px 0;
  padding: 0 0 30px 0;
	border-bottom: 1px solid #A8BEE6;
  font-size: 13.5px;
}

.comlogo { 
  grid-area: comlogo; 
  align-self: center;
  justify-self: center;
  width: 100%;
	max-width: 278px;
}

.comtex1 { 
  grid-area: comtex1;
  height: auto;
	margin-left: 15%;
}

.comtexttd {
	width: 100%;
}
.comtexttd table{
	width: 100%;
}
.comtexttd table th{
	text-align: left;
	width: 140px;
	padding: 0.5em 1em 0.5em 0;
	line-height: 1.2em;
	color: #123474;
}
.comtexttd table td{
	text-align: left;
	padding: 0.5em 0.5em;
	line-height: 1.2em;
  text-indent: -1em;
  padding-left: 1em;
}
.comtexttd table td:before {
content:'：';
}
.boder_top {
  border-top: 1px solid #cccccc;
  margin-top: 1em;
  padding-top: 1em;
}
.mb1em {
  margin-bottom: 1em;
}
.fs-80 {
  font-size: 80%;
}
.fs-70 {
  font-size: 70%;
}
.txt_align_center {
  text-align: center;
}


@media screen and (max-width: 799px) {
.catalog_box {
  width: 90%;
}
.catalog_box_grid {
  grid-template-columns: 1fr;
}
	#topMenuDIV{
		padding-left: 10px;
		padding-right: 10px;
	}
	#topBTN1{
	width: 32.5%;
	height: auto;
	}
	#topBTN2{
		width: 32.5%;
		height: auto;
	}
	#topBTN3{
		width: 32.5%;
		height: auto;
	}

}

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

.catalog_com {  
  grid-template-areas:
    "comlogo comlogo comlogo"
    "comtex1 comtex1 comtex1";
}
.comlogo { 
  width: 70%;
	max-width: 500px;
	padding-right: 0px;
}
.comtex1 { 
	margin-top: 30px;
	margin-left: 0%;
}  
  
}