@charset "utf-8";
/*-----------------------------------------------------
							　　　　　目次

  ■リセットCSS
		・リセットCSS-全体
		・リセットCSS-form
	
	■グリッドレイアウトスタイル（modify以外は編集不可）
		・共通
		・SP (xs) 
		・TABLET (sm)
		・PC (md)

  -----------------------------------------------------
	以下、編集可能
		
	■汎用スタイル common
	
		0.基本スタイル（フォント色、リンク色）
		1.テキストレイアウト 
		2.下余白
		3.フォントカラー/サイズ
		4.フォント装飾
		5.リスト
		6.テーブル
		7.テキストリンク
		8.width%
		9.汎用　打ち消し系	
		99.フォーム共通スタイル

		
	■ PC/SP　一部共通スタイル
		・common ボタンの色
		・common ボタンのレイアウト
　　・キャプションを画像の幅に合わせる
		

	■汎用スタイル(デバイス別)
		・SP (xs) 
		・TABLET (sm)
		・PC (md)
		
-----------------------------------------------------*/



/*  ================================================================================================

    リセット

    ============================================================================================  */
		
/*　リセットCSS-全体
-----------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
	font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック', meiryo, sans-serif;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	vertical-align: bottom;
}

@font-face {
	font-family: "myFont";
	src: url("/kyo-gallery/lib/font/NotoSerifJP-Regular.otf")  format('woff');
}



/*　リセットCSS-form
-----------------------------------------------------*/
input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック', meiryo, sans-serif;
}
input[type="button"],
input[type="submit"] {
	font-family: "myFont";
}



/*  ================================================================================================

    汎用スタイル　common

    ============================================================================================  */
		
/* common 0.基本スタイル
-----------------------------------------------------*/
*, *:before, *:after {
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
		box-sizing: border-box;
}

body {
	color: #333;
	letter-spacing: 1px;
	word-wrap: break-word; /* IE11用 */
	overflow-wrap: break-word; /* 禁則処理 */

	font-family:"myFont";
}
img {
	/*max-width:100%;*/
}


/*----- リンク色 -----*/
a:link,
a:visited{
	color: #000000;
	text-decoration: none;
}
a:hover,
a:active{
	color: #000000;
	text-decoration: none;
}

a img:hover {
	opacity:0.8;
}

/*----- レイアウト -----*/
figure{	
	text-align: center;
}
figcaption{	
	text-align: left;
}

/* 禁則処理 */
.contentsWrap{
	overflow-wrap: break-word;
}
.noWrap{
	white-space: nowrap!important;
}

/* 追加 clearfix (初期追加のみ)
---------------------------------------*/
.contentsWrap:before,
.contentsWrap:after{
    content: " ";
    display: table;
}
.contentsWrap:after{
    clear: both;
}


/* common 1.テキストレイアウト 
-----------------------------------------------------*/
.text-left  { text-align: left!important;}
.text-center{ 
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-right { text-align: right!important;}

.valign-top  { vertical-align: top!important;}
.valign-center{ vertical-align:middle!important;}
.valign-bottom { vertical-align: bottom!important;}


/* common 3.フォントカラー/サイズ
-----------------------------------------------------*/
.text-warning { color: #C00;}
.text-success { color: #336666;}
.text-primary { color: #0066CC;}
.text-muted   { color: #777;}
.text-info    { color: #31708f;}
.text-danger  { color: #FF0000; background-color:#FFFDC1; display:inline;}


/* common 4.フォント装飾
-----------------------------------------------------*/
sup{
	font-size: 75.5%;
	vertical-align: top;
	position: relative;
	top: -0.1em;
}
sub{
	font-size: 75.5%;
	vertical-align: bottom;
	position: relative;
	top: 0.1em;
}
strong{
	font-weight: bold;
}
em{
	font-style: oblique;
}
.text-indent {
	text-indent: 1em;
}
.note{
	font-size: 1.3rem;
	line-height: 1.4;
}
em,
.italic{
	font-style: italic!important;
}


/* common 5.リスト
-----------------------------------------------------*/
/* listAsterisk */
.listAsterisk{
	padding-left: 1.5em;
	margin-bottom: 20px;
}
.listAsterisk>li{
	text-indent: -1.5em;
	line-height: 1.5;
}
.listAsterisk>li:before{
	content: '※';
	padding-right: 0.5em;
}

/* listCircle */
.listCircle{
	list-style-type: disc;
	padding-left:1.5em;
	margin-bottom: 20px;
}

/* listSquare */
.listSquare{
	padding-left: 1.5em;
	margin-bottom: 20px;
}
.listSquare>li{
	text-indent: -1.5em;
}
.listSquare>li:before{
	content: '■';
	padding-right: 0.5em;
}

/* listDecimal */
.listDecimal{
	list-style-type: decimal;
	padding-left:1.5em;
	margin-bottom: 20px;
}

.textIndent1 {
	padding-left:1em;
	text-indent:-1em;
}


/* common 6.テーブル
-----------------------------------------------------*/
/*----- テーブル共通スタイル -----*/
.table{
	width: 100%;
	max-width: 100%;
}
.table th{
	vertical-align: middle;
	text-align: left;
	font-weight: bold;
}

/*----- ベースのテーブル -----*/
.table td,
.table th {
	border: 1px solid #ddd;
}


/*----- 左右ボーダーなしテーブル -----*/
.table-horizon td,
.table-horizon th{
	border: 1px solid #ddd;
	border-left: none;
	border-right: none;
}
.table-horizon th {
	border-top: none;
	border-bottom: 2px solid #ddd;
}

/*----- ストライプ　テーブル -----*/
.table-striped>tbody>tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}
.table-striped th {
	border-bottom: 2px solid #ddd;
}

/*----- 見出し背景色つきのテーブル -----*/
.table-thbg th{
	background-color: #f9f9f9;
}

/*-----中央寄せ-----*/
.thCenter th,
.tdCenter td{
	text-align: center;
}

/*----- テーブルの項目th　改行させたくないとき -----*/
.noWrapTh th{
	white-space: nowrap;
}

/*----- スクロールテーブル -----*/
#tablefix td,
#tablefix th {
	vertical-align: top;
	overflow: hidden;
}
/* スクロールする領域内のテーブル */
#tablefix {
	max-width: inherit;
	border-collapse: collapse;
}
#tablefix th:first-child{
	border-right: 2px solid #ddd;
}



/* common 7.テキストリンク
-----------------------------------------------------*/
.arrowLink{
	position: relative;
	display: inline-block;
	padding-left: 15px;
	padding-right: 15px;
	text-decoration: underline!important;
}
.arrowLink:before{
	width: 10px;
	height: 7px;
	position: absolute;
	top: 6px;
	bottom: 0;
	left: 4px;
	margin: 0 auto;
	content: "";
	box-sizing: border-box;
	border: 7px solid transparent;
	border-left: 10px solid #527F6B;
	/* vertical-align: middle; アイコンを中央にする場合*/
}


/* common 8.width%
-----------------------------------------------------*/
.width-10per { width: 10%!important;}
.width-20per { width: 20%!important;}
.width-30per { width: 30%!important;}
.width-40per { width: 40%!important;}
.width-50per { width: 50%!important;}
.width-60per { width: 60%!important;}
.width-70per { width: 70%!important;}
.width-80per { width: 80%!important;}
.width-90per { width: 90%!important;}
.width-100per{ width: 100%!important;}


/* common 9.汎用　打ち消し系
-----------------------------------------------------*/
/* 余白　打ち消し */
.pt0{padding-top: 0!important;}
.pb0{padding-bottom: 0!important;}
.pr0{padding-right: 0!important;}
.pl0{padding-left: 0!important;}

.mt0{margin-top: 0!important;}
.mb0{margin-bottom: 0!important;}
.mr0{margin-right: 0!important;} 
.ml0{margin-left: 0!important;}


/* common 99.フォーム共通スタイル
-----------------------------------------------------*/

/** テキストボックス **/
input[type="text"],
textarea {
	outline: none;
	background-color: #F2F0EC;
	padding: 8px 10px;
	margin-right: 10px;
	letter-spacing: 1px;
}

/** プルダウン **/
select{
	padding: 5px 40px 5px 10px;
	margin-right: 10px;
}

/** ラジオボックス **/
input[type="radio"] {
	display: none;
}
.radioBtn label {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 20px;
	cursor: pointer;
}
.radioBtn label::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #F2F0EC;
	border: 1px solid #ccc;
	border-radius: 100%;
	box-sizing: content-box;
}
.radioBtn input[type="radio"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #F36D00;
	border-radius: 100%;
}

/** チェックボックス **/
input[type="checkbox"] {
	display: none;
}
.checkbox label {
	position: relative;
	display: inline-block;
	padding: 4px 5px 4px 22px;
	cursor: pointer;
}
.checkbox label:before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #F2F0EC;
	border: 1px solid #ccc;
	box-sizing: content-box;
}
.checkbox input[type="checkbox"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #F36D00;
}

/** プルダウン select **/
label.selectLabel {
	position: relative;
	display: block;
	width: 160px;
	border: 1px solid #F36D00;
	border-radius: 5px;
	background: #F2F0EC;
}
label.selectLabel:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	width: 0;
	height: 0;
	margin: -2px 0 0 0;
	border: 5px solid transparent;
	border-top: 7px solid #F36D00;
}
::-ms-expand {
 display: none;
}

option{
	padding-right: 20px;
}

/** トグルボタン **/
.togglebtn input {
	display: none;
}
.togglebtn input+label,
.togglebtn input+label::before,
.togglebtn input+label::after {
	transition: all .2s;
}
.togglebtn input+label {
	display: inline-block;
	position: relative;
	width: 132px;
	height: 34px;
	border-radius: 24px;
	cursor: pointer;
	line-height: 1.0;
}
.togglebtn input+label::before {
	display: block;
	content: attr(data-off-label);
	position: absolute;
	top: 9px;
	right: 15px;
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 1.5rem;
}
.togglebtn input+label::after {
	content: '';
	position: absolute;
	top: 2px;
	left: 2px;
	width: 30px;
	height: 30px;
	background-color: #fff;
	border-radius: 50%;
}
.togglebtn input:checked+label::before {
	content: attr(data-on-label);
	left: 23px;
	right: auto;
	color: #fff;
}
.togglebtn input:checked+label::after {
	left: 100px;
	background-color: #fff;
}

/* togglebtn color */
.togglebtn input+label {
	background-color: #aaa;
}
.togglebtn input+label::before {
	color: #fff;
}
.togglebtn input:checked+label {
	background-color: #F36D00;
}
.togglebtn input:checked+label::before {
	color: #fff;
}

/** 共通注釈 **/
.asterisk:after{
	content: "必須";
	background-color: #FF0000;
	color: #FFF;
	padding: 1px 3px;
	margin-left: 0.8em;
	font-size: 0.8em;
	white-space: nowrap;
}

/** ファイル選択 **/
label.fileUploader {
  color: #fff;
	font-size: 1.4rem;
  background: #F36D00;
  padding: 5px 10px;
  border-radius: 5px;
	cursor: pointer;
}
/* //フォーム共通スタイル
-----------------------------------------------------*/




/*  ================================================================================================

    PC/SP　一部共通スタイル

    ============================================================================================  */


/* common ボタンの色
-----------------------------------------------------*/
/* デザイン */
.btnA{
	background: url(/kyo-gallery/lib/img/top/bg_btn02.png) right bottom no-repeat;
	border: 1px solid #fffbcd;
}

/* common ボタンのレイアウト
-----------------------------------------------------*/
.btnArea a:hover,
.btnArea2 a:hover,
input:hover,
textarea:hover{
	opacity:0.7;
	cursor: pointer;
}
.btnArea,
.btnArea2{	
	text-align: center;
}
input{
	display: inline-block;
}
.anybtn{
	cursor: pointer;
}


/*  キャプションを画像の幅に合わせる
-----------------------------------------------------*/
figcaption{
	margin-top: 5px;
	line-height: 1.3;
	font-size: 14px;
}


/*  ================================================================================================

    汎用スタイル(デバイス別)

    ============================================================================================  */

/*-----------------------------------------------------
                      SP (xs) 
-----------------------------------------------------*/
@media screen and (max-width: 767px) {


/* SP 1.テキストレイアウト 
-----------------------------------------------------*/
.text-xs-left  { text-align: left!important;}
.text-xs-center{
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-xs-right { text-align: right!important;}


/* SP  2.下余白
-----------------------------------------------------*/
/* 下余白 */
.blockend-ss{	margin-bottom: 5px!important;}
.blockend-s {	margin-bottom: 10px!important;}
.blockend-m {	margin-bottom: 20px!important;}
.blockend-l {	margin-bottom: 30px!important;}

/* 下余白 SPのみ */
.blockend-xs-ss{	margin-bottom: 5px!important;}
.blockend-xs-s {	margin-bottom: 10px!important;}
.blockend-xs-m {	margin-bottom: 20px!important;}
.blockend-xs-l {	margin-bottom: 30px!important;}


/* SP 3.フォントサイズ
-----------------------------------------------------*/
.small_xx { font-size: 1.2rem;}/* SP　1.2より下にはしない */
.small_x  { font-size: 1.2rem;}
.small    { font-size: 1.3rem;}
.medium   { font-size: 1.4rem;}
.large    { font-size: 1.5rem;} 
.large_x  { font-size: 1.6rem;}
.large_xx { font-size: 1.8rem;}


/* SP  6.テーブル
-----------------------------------------------------*/
.table td,
.table th{
	padding: 4px;
	font-size: 1.2rem;
}
.table{
	margin-bottom: 20px;
}


/* SP 9.width %  
-----------------------------------------------------*/
.width-xs-ss{width: 40%!important;}
.width-xs-s{ width: 60%!important;}
.width-xs-m{ width: 80%!important;}
.width-xs-l{ width: 90%!important;}

.width-xs-10per { width: 10%!important;}
.width-xs-20per { width: 20%!important;}
.width-xs-30per { width: 30%!important;}
.width-xs-40per { width: 40%!important;}
.width-xs-50per { width: 50%!important;}
.width-xs-60per { width: 60%!important;}
.width-xs-70per { width: 70%!important;}
.width-xs-80per { width: 80%!important;}
.width-xs-90per { width: 90%!important;}
.width-xs-100per{ width: 100%!important;}



/* SP 99.フォームスタイル 
-----------------------------------------------------*/
/** textarea  **/
input[type="text"],
textarea {
	width: 100%;
}

/** ラジオボックス **/
input[type="radio"] {
	display: none;
}
.radioBtn label {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 20px;
	cursor: pointer;
}
.radioBtn label::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #F2F0EC;
	border: 1px solid #ccc;
	border-radius: 100%;
}
.radioBtn input[type="radio"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #F36D00;
	border-radius: 100%;
}


}
/* // SP (xs) */



/*-----------------------------------------------------
                     TABLET (sm) 
-----------------------------------------------------*/
@media screen and (min-width: 767px) and (max-width: 970px) {

	

/* TB 1.テキストレイアウト 
-----------------------------------------------------*/
.text-sm-left  { text-align: left!important;}
.text-sm-center{
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-sm-right { text-align: right!important;}


/* TB  2.下余白
-----------------------------------------------------*/
/* 下余白 */
.blockend-ss{	margin-bottom: 5px!important;}
.blockend-s {	margin-bottom: 10px!important;}
.blockend-m {	margin-bottom: 20px!important;}
.blockend-l {	margin-bottom: 30px!important;}

/* 下余白 SPのみ */
.blockend-sm-ss{	margin-bottom: 5px!important;}
.blockend-sm-s {	margin-bottom: 10px!important;}
.blockend-sm-m {	margin-bottom: 20px!important;}
.blockend-sm-l {	margin-bottom: 30px!important;}


/* TB 3.フォントサイズ
-----------------------------------------------------*/
.small_xx { font-size: 1.2rem;}
.small_x  { font-size: 1.3rem;}
.small    { font-size: 1.4rem;}
.medium   { font-size: 1.5rem;}
.large    { font-size: 1.6rem;} 
.large_x  { font-size: 1.7rem;}
.large_xx { font-size: 1.8rem;}


/* TB  6.テーブル
-----------------------------------------------------*/
.table td,
.table th{
	padding: 6px;
	font-size: 1.4rem;
}
.table{
	margin-bottom: 20px;
}


/* TB 8.width% 
-----------------------------------------------------*/
.width-sm-ss{width: 40%!important;}
.width-sm-s{ width: 60%!important;}
.width-sm-m{ width: 80%!important;}
.width-sm-l{ width: 90%!important;}

.width-sm-10per { width: 10%!important;}
.width-sm-20per { width: 20%!important;}
.width-sm-30per { width: 30%!important;}
.width-sm-40per { width: 40%!important;}
.width-sm-50per { width: 50%!important;}
.width-sm-60per { width: 60%!important;}
.width-sm-70per { width: 70%!important;}
.width-sm-80per { width: 80%!important;}
.width-sm-90per { width: 90%!important;}
.width-sm-100per{ width: 100%!important;}



/* TB 99.フォームスタイル
-----------------------------------------------------*/
/** textarea  **/
input[type="text"],
textarea {
	width: 100%;
}

}
/*  //TABLET (sm) */

		
/*-----------------------------------------------------
                        PC (md) 
-----------------------------------------------------*/
@media print, screen and (min-width: 971px) {
	

/* PC 1.テキストレイアウト 
-----------------------------------------------------*/
.text-md-left  { text-align: left!important;}
.text-md-center{
	text-align: center!important;
	margin-left: auto;
	margin-right: auto;
}
.text-md-right { text-align: right!important;}


/* PC  2.下余白
-----------------------------------------------------*/
/* 下余白 */
.blockend-ss{	margin-bottom: 15px!important;}
.blockend-s {	margin-bottom: 30px!important;}
.blockend-m {	margin-bottom: 50px!important;}
.blockend-l {	margin-bottom: 70px!important;}

/* 下余白 PCのみ */
.blockend-md-ss{	margin-bottom: 15px!important;}
.blockend-md-s {	margin-bottom: 30px!important;}
.blockend-md-m {	margin-bottom: 50px!important;}
.blockend-md-l {	margin-bottom: 70px!important;}


/* PC 3.フォントサイズ
-----------------------------------------------------*/
.small_xx { font-size: 1.3rem;}
.small_x  { font-size: 1.4rem;}
.small    { font-size: 1.5rem;}
.medium   { font-size: 1.6rem;}
.large    { font-size: 1.7rem;} 
.large_x  { font-size: 1.8rem;}
.large_xx { font-size: 2.0rem;}


/* PC  6.テーブル
-----------------------------------------------------*/
/* テーブル */
.table td,
.table th{
	padding: 8px;
}

.noWrapTh-md th{
	white-space: nowrap;
}


/* PC 8.width% 
-----------------------------------------------------*/
.width-md-ss{width: 40%!important;}
.width-md-s{ width: 60%!important;}
.width-md-m{ width: 80%!important;}
.width-md-l{ width: 90%!important;}

.width-md-10per { width: 10%!important;}
.width-md-20per { width: 20%!important;}
.width-md-30per { width: 30%!important;}
.width-md-40per { width: 40%!important;}
.width-md-50per { width: 50%!important;}
.width-md-60per { width: 60%!important;}
.width-md-70per { width: 70%!important;}
.width-md-80per { width: 80%!important;}
.width-md-90per { width: 90%!important;}
.width-md-100per{ width: 100%!important;}

}
/* PC (md) */