@charset "utf-8";


/*keyframes.cssの読み込み
---------------------------------------------------------------------------*/
@import url("keyframes.css");

/*lightbox.cssの読み込み
---------------------------------------------------------------------------*/
@import url(https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.10.0/css/lightbox.css);

/*slide.cssの読み込み
---------------------------------------------------------------------------*/
@import url(slide.css);

/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@300&display=swap');


/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*全体の設定
---------------------------------------------------------------------------*/
html { scroll-behavior: smooth;}
html,body {
	font-size: 16px;	/*画面幅481px以上で閲覧した際の文字サイズ。ここを変更すると、他の文字サイズも連動します。※480px以下の指定箇所は下の方に別途あります。*/
}
body {
	margin: 0px;
	padding: 0px;
	color: #999;	/*全体の文字色*/
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	/*フォント種類*/
	line-height: 2;		/*行間*/
	background: #fff;	/*背景色*/
	-webkit-text-size-adjust: none;
	overflow-x: hidden;
}
h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form {margin: 0px;padding: 0px;font-size: 1rem;font-weight: normal;}
ul {list-style-type: none;}
ol {padding-left: 40px;padding-bottom: 15px;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 1rem;border-spacing: 0;}
video {max-width: 100%;}
iframe {width: 100%;}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #999;		/*リンクテキストの色*/
	transition: 0.2s;	/*マウスオン時の移り変わるまでの時間設定。0.2秒。*/
}
a:hover {
	color: #c1d6bf;			/*マウスオン時の文字色*/
	text-decoration: none;	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
}

/*container（サイト全体を囲むブロック）
---------------------------------------------------------------------------*/
#container {
	/*margin: 40px;	ブロックの外側にとるスペース*/
}

/*section
---------------------------------------------------------------------------*/
section {overflow: hidden;}

/*ヘッダー
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	position: relative;
	width: 100%;
	/* height: 140px; */	/*高さ*/
	height: 15vh;	/*高さ*/
}
/*ヘッダーブロック（※トップページへの追加設定）*/
.home header {
	height: auto;	/*高さを自動に*/
}
/*ロゴ画像*/
header #logo {
	position: absolute;
	z-index: 1;
	/*left: 20%;*/	/*左からの配置場所*/
	top: 60%;	/*上からの配置場所*/
	width: 100%;	/*幅*/
}

header #logo2 {
	position: relative;
	/* margin-top: 1rem; */
	/* padding-bottom: 5rem; */
	padding: 1.5vh 0;
	width: 100%;	
	text-align: center;

}

/*ロゴ画像（※トップページへの追加設定）*/
.home header #logo {
	top: 20%;	/*上からの配置場所*/
	text-align: center;
}

.home header #logo img {
	width: 90%;
}

header #logo2 img {
	/* width: 80%; */
	max-width: 80%;
	max-height: 13vh;
}

/*３本バーアイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: fixed;z-index: 100;
	top: 60px;	/*上からの配置場所*/
	left: 60px;	/*左からの配置場所*/
}
/*アイコン共通設定*/
#menubar_hdr.close,
#menubar_hdr.open {
	width: 50px;	/*幅*/
	height: 50px;	/*高さ*/
}
/*三本バーアイコン*/
#menubar_hdr.close {
	background: url(../images/icon_menu.png) no-repeat center top/50px;	/*背景画像の読み込み、画像の上半分（３本マーク）を表示。幅は50px。*/
}
/*閉じるアイコン*/
#menubar_hdr.open {
	background: url(../images/icon_menu.png) no-repeat center bottom/50px;	/*背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
}

/*メインメニューブロックの設定
---------------------------------------------------------------------------*/
#menubar {
	animation-name: opa1;		/*keyframes.cssで使う@keyframesの指定*/
	animation-duration: 1S;		/*アニメーションの実行時間*/
	animation-fill-mode: both;	/*アニメーションの待機中は最初のキーフレームを維持、終了後は最後のキーフレームを維持。*/
	background: rgba(255,255,255,0.9);	/*背景色。255,255,255は白の事で、0.9は色が90%出た状態の事。*/
	position: fixed;overflow: auto;z-index: 99;
	left: 0px;
	top: 0px;
	width: 100%;		/*幅。上のpaddingと合わせて100%になるように。*/
	height: 100%;	/*高さ。上のpaddingと合わせて100%になるように。*/
	text-align: center;	/*テキストをセンタリング*/
}
#menubar a {
	text-decoration: none;
}
/*メニューブロックの上に空ける余白*/
#menubar ul {
	margin-top: 200px;
}
/*文字サイズ。冒頭で指定しているフォントサイズの1.25倍です。*/
#menubar li {
	font-size: 1.25rem;		
}

#stickymenubar {	
	position: sticky;
	top: 0;
	width: 100%;
	height: 60px;
	background: rgba(255,2255,240, 0.8);
	background-image: linear-gradient(0deg, rgba(233, 207, 30, 0.8), rgba(255, 246, 50, 0.8) 5%, rgba(255, 250, 225, 0.8));
	border-radius: 12px;	
	z-index: 1;
}

#stickymenubar ul {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	align-items: center;
	height: 100%;
}

#stickymenubar ul li {
	font-size: 1.25rem;	
	text-align: center;
	line-height: 1.25rem;	
	white-space: nowrap;
	overflow: hidden;
	flex-grow: 1;
}

#stickymenubar ul li span {
	font-size: 0.9rem;	
}

#stickymenubar ul li a {
	text-decoration: none;
	display: block;
    height: 100%;
    width: 100%
}

/*コンテンツ
---------------------------------------------------------------------------*/
#contents {
	padding: 40px 100px;	/*上下、左右へのコンテンツ内の余白*/
	position: relative;
	animation-name: opa1;		/*keyframes.cssで使う@keyframesの指定*/
	animation-duration: 0.5S;	/*アニメーションの実行時間*/
	animation-delay: 0.5s;		/*出現するタイミング（秒後）*/
	animation-fill-mode: both;
}
/*h2タグ*/
#contents h2 {
	clear: both;
	/* margin-bottom: 50px; */	/*下に空けるスペース*/
	font-size: 2.25rem;		/*文字サイズ。冒頭で指定しているフォントサイズの2.25倍です。*/
	text-align: center;		/*文字をセンタリング*/
	letter-spacing: 0.1em;	/*文字間隔を少し広めにとる指定。通常がいいならこの１行削除。*/	
	line-height: 2.75rem;
}
#contents h2 strong {
	font-weight: normal;
	border-bottom: 3px #c1d6bf solid;	
	border-image: linear-gradient(to right, transparent 0%, #c1d6bf 50%, transparent 100%);
	border-image-slice: 1;
	white-space: nowrap;
	overflow: hidden;
}
#contents h2 strong::before {
	content: '';
	width: 8rem;	
	display: inline-block;
}
#contents h2 strong::after {
	content: '';	
	width: 8rem;	
	display: inline-block;
}
/*h2タグ内のspanタグ（装飾文字）*/
#contents h2 span {
	display: inline-block;
	white-space: nowrap;
	font-size: 0.875rem;	/*文字サイズ。冒頭で指定しているフォントサイズの0.875倍です。*/
	/* border-top: 3px solid #c1d6bf; */	/*上の線の幅、線種、色*/
	padding: 0 40px 0; 	/*上、左右、下への余白*/
}

/*h3タグ*/
#contents h3 {
	clear: both;
	margin-bottom: 30px;	/*下に空けるスペース*/
	font-size: 1.5rem;		/*文字サイズ。冒頭で指定しているフォントサイズの1.5倍です。*/
	border-bottom: 1px dashed #999;	/*下線の幅、線種、色*/
	padding-left: 3%;		/*左側に空ける余白*/
	letter-spacing: 0.1em;	/*文字間隔を少し広めにとる指定。通常がいいならこの１行削除。*/
}
/*h3タグ内のspanタグ（装飾文字）*/
#contents h3 span {
	display: inline-block;
	font-size: 0.875rem;	/*文字サイズ*/
	padding-left: 20px;
}

/* h4タグ */
h4.entry {
	font-size: 1.25rem;
	font-weight: bold;
	letter-spacing: 0.25em;
	text-indent: 1em;
	position: relative;
	padding: 0.5em 0;
}
h4.entry:after {
	content: "";
	display: block;
	height: 4px;
	background: linear-gradient(to right, rgb(233, 71, 9), transparent);
}

h4.procedure {
	font-size: 1.125rem;
	font-weight: bold;
	position: relative;
	background: #dfefff;
	box-shadow: 0px 0px 0px 5px #dfefff;
	border: dashed 2px white;
	padding: 0.2em 1em;
	color: rgb(69, 69, 69);
	letter-spacing: 0.25em;
  margin-bottom: 1rem;
}  
h4.procedure:after {
	position: absolute;
	content: '';
	left: -7px;
	top: -7px;
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: #fff #fff #a8d4ff;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

/*段落タグ*/
#contents p {
	padding: 0 3% 30px;	/*上、左右、下への余白*/
}
/*他、微調整*/
#contents h2 + p,
#contents h3 + p {
	margin-top: -5px;
}
#contents p + p {
	margin-top: -10px;
}
#contents section + section {
	margin-top: 100px;
}

#countdownBox {	
	font-size: 1.5rem;
	line-height: 1.75rem;
	text-align: center;
	padding: 1rem 0;
}
#countdownBox span {
	font-size: 0.875rem;
}

#announcement {
  display: none;
}

/*list（円形のサムネイル用）
---------------------------------------------------------------------------*/
/*ボックスの設定*/
#contents .list {
	float: left;	/*左に回り込み*/
	overflow: hidden;
	border-radius: 12px;		/*円形にする指定。この１行を削除すれば四角形になります。30pxなどに変更すれば角丸の四角形になります。*/
	margin: 0 6.6% 40px;	/*上、左右、下へ空けるスペース。サムネイル同士の余白部分です。*/
	width: 20%;	/*幅*/
}

#contents .gallery {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 4em;
}

#contents .gallery .artwork {	
	flex-grow: 1;
	max-width: 30%;
	text-align: center;
}

#contents .gallery .artwork a {	
	text-decoration: none;
}

#contents .gallery .artwork .frame {	
	padding: 16px 12px;
	background-image: linear-gradient(135deg, rgb(17,52,83), rgb(1,25,27));
	border-radius: 6px;
}

#contents .gallery .artwork figcaption {
	text-align: center;
	line-height: 1.5rem;
}
#contents .gallery .artwork figcaption img {
	text-align: center;
	line-height: 1.5rem;
	width: 16px;
	height: 16px;
	vertical-align: middle;
}
#contents .gallery .artwork figcaption strong {	
	white-space: nowrap;
	margin-right: 1rem;
}

#contents .slide-gallery {
	position: relative;
}

#contents .slide-gallery .artwork {		
	/*max-width: 30%;*/
	text-align: center;
}

#contents .slide-gallery .artwork a {	
	text-decoration: none;
}

#contents .slide-gallery .artwork .frame {	
	padding: 16px 12px;
	background-image: linear-gradient(135deg, rgb(17,52,83), rgb(1,25,27));
	border-radius: 6px;
}

#contents .slide-gallery .artwork figcaption {
	text-align: center;
	line-height: 1.5rem;
}
#contents .pagination-container {
	position: relative;
	margin-top: 2.5rem;
}

#award {
	overflow: visible;
}

#award h2 {
	position: sticky;
	top: 60px;
  padding-top: 4px;
  background-color: rgba(255,255,255);
}

#award ul {
	display: flex;
	flex-wrap: wrap;
	justify-content:  flex-start;
	gap: 0 5em;
	padding: 0 4em;
}
#award ul li {
	letter-spacing: 0.25em;
	flex-basis: 12em;
	white-space: nowrap;
}
#award ul li span {
	letter-spacing: 0;
	display: inline-block;
	margin-right: 0;
}
#award ul li span:before {
	content: "　"
}
.award_bg {
	background-image: url("../images/report_bg.jpg");
}
/*
---------------------------------------------------------------------------*/
.about {
	background: url(../images/leaves.png), url(../images/malon.jpg);
	background-position: left top, bottom right;
	background-repeat: no-repeat, no-repeat;
}
.note {
	background-image:
    linear-gradient(
      180deg,
      rgba(10, 38, 61, 0) 0%,
      rgba(10, 38, 61, 0) 97%,
      #ddd 97%,
      #ddd 100%
    );
  background-size:100% 2.5em;
  line-height: 2.5em;
}

.note .subtitle {
	font-size: 1.25rem;
	font-weight: bold;
	padding-bottom: 0.75em !important;
}

.note .sentence {
	text-indent: 1em;
	padding-left: 3em !important;
	margin-bottom: 1em;
}

.note .sentence span {
	background:linear-gradient(transparent 60%, rgba(102, 204, 255, 0.5) 60%);
}

.note .headspace {
	padding-bottom: 0 !important;
}

/*受賞作品ページの検索
---------------------------------------------------------------------------*/
#accepting, #judging {
	display: flex;
	justify-content: center;
}
#judging {
	margin-top: 0 !important;
}
#search {
	display: flex;
	justify-content: center;
  margin-top: 0 !important;
}
#search .keywordBox {
	padding: 0 0 0 1.5em;
	border: 1px solid #999;	
	border-radius: 2em;
	overflow: hidden;
	white-space: nowrap;
	display: flex;
	width: 90%;
}
#search input[type="text"] {
	font-size: 1.25rem;
	border: none;
	height: 2.0em;
	flex-grow: 1;
}
#search input[type="text"]:focus {
	outline: 0;
}
#search input[type="image"] {	
	background: #3879D9;	
	vertical-align: middle;
	flex-grow: 0;
}
#details + label,  #details + label + div {
	margin-left: 2em;	
}
#details + label::before {
	content: "▶　";
}
#details + label + div {
	height: 0;
	padding: 0;
	border: 0;
	overflow: hidden;
	box-shadow: none;
	margin-bottom: 0;
	width: 80%;
}
#details:checked + label::before {
	content: "▼　";
}
#details:checked + label + div {
	height: auto;
	padding: 1.5em;
	border: 1px solid #999;
	margin-bottom: 4px;
	box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.2);
	transition: all .3s;
	width: 80%;
}
#search .toggle {
	display: none;
}
#details + label + div input + label {
	height: 0;
	padding: 0.25em 0.5em;
	border-style: outset;
	border-width: 2px;
	border-color: #999;	
	margin-right: 0.125em;
	line-height: 2.5em;
	white-space: nowrap;
	border-radius: 4px;
}
#details + label + div input:checked + label {
	border-style: inset;
	background-color: rgb(39, 105, 230);
	color: #fff;
	font-weight: bold;
}
#details + label + div input[type="submit"] {
	display: block;
	margin-left: auto;
	margin-right: 0;
	color: #fff;
	background-color: #0083d8;
	padding: 0.25em 1.5em;
	border-radius: 0.75em;
}
#no-result {
  display: none;
} 
/*フッター設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	font-size: 0.75rem;	/*文字サイズ*/
	text-align: center;
	box-shadow: 0px 0px 50px #fff inset;	/*ボックスの影。insetは内側に向ける指定。*/
	padding: 3%;	/*余白*/
	background: url(../images/1.jpg) no-repeat center center / cover;	/*背景画像の読み込み。*/
	color: #666;	/*文字色*/
}
footer small {font-size: 100%;}
footer a {text-decoration: none;color: #666 !important;}
footer .pr {display: block;}

/*facebookやtwitterなどのアイコン
---------------------------------------------------------------------------*/
/*アイコン全体を囲むブロック*/
ul.icon {
	margin-bottom: 20px;
}
/*アイコン１個あたりの設定*/
ul.icon li {
	display: inline-block;	/*横並びにさせる指定*/
}
/*アイコン画像の設定*/
ul.icon img {
	width: 30px;		/*画像の幅*/
}
ul.icon img:hover {
	opacity: 0.8;		/*マウスオン時に透明度を80%にする。*/
}

/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*見出しを含まないお知らせブロック*/
#new {
	background-image: url(../images/news_bg.jpg);
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: right top;
}
#new dl {
	padding: 0px 3%;		/*上下、左右へのブロック内の余白*/
}
/*日付設定*/
#new dt {
	float: left;
	width: 11em;		/*幅*/
	letter-spacing: 0.1em;
}
/*記事設定*/
#new dd {
	padding-left: 11em;
	text-shadow: 2px 2px 4px rgba(255,255,255,1);
}
#history .info {
	display: flex;
	gap: 2rem;
	background: url(../images/morning.jpg);
	background-repeat: no-repeat;
	background-position: right bottom;
}

#history .info .photo {
	flex-grow: 1;
	flex-basis: 30%;
}

#history .info .story {
	flex-grow: 1;
	flex-basis: 50%;
}

#requirements .entry_part {
  
  background: url(../images/shippou_red.jpg);
  background-repeat: repeat-y;
  background-position: right top;
}
.entry_part .notice {
  color:rgb(0, 110, 84);
}
.entry_part .papersize {
  text-indent: -4%;
  padding-left: 3em !important;
}
.entry_part .addressname {
  font-size: 1.125rem;
}
.entry_part .bank {
	padding-left: 2em;
}

#requirements .award_part {  
  background: url(../images/shippou_green.jpg);
  background-repeat: repeat-y;
  background-position: right top;
}
.award_part .notice {
  color:rgb(0, 110, 84);
}
.award_part .grade {
	background: url(../images_photo/awards.png);
	background-repeat: no-repeat;
	background-position: right center;
}

.award_part .grade table {
  margin: 0 0 30px 3%;  
}
.award_part .grade tr td:nth-child(2) {
	line-height: 2em;
	letter-spacing: 0.1em;
	padding-right: 2em;
}
.award_part .grade tr td.same {
	padding-left: 4em;
}
.award_part .grade table img {
	width: 24px;
	height: 24px;
  	margin-right: 0.75em;
	vertical-align: middle;
}
.award_part dl {
	padding: 0 4em 30px 3%;
}
.award_part dt {
	font-weight: bold;
	letter-spacing: 0.1em;
}
.award_part dd {
	padding-left: 1.5em;
}
.award_part iframe {
	border:0;
	padding:0 3% 30px;
	width:96%;
	height: 450px;
}

/*ta1設定
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	border: 1px solid #fff;	/*テーブルの枠線の幅、線種、色*/
	border-bottom: none;	/*下線だけ消す*/
	text-align: left;		/*文字を左寄せ*/
	font-weight: bold;		/*太字に*/
	padding: 15px 10px;		/*上下、左右へのボックス内の余白*/
}
/*ta1テーブル*/
.ta1 {
	width: 94%;
	table-layout: fixed;
	margin: 0 3% 30px;
}
.ta1, .ta1 td, .ta1 th {
	border: 1px solid #fff;	/*テーブルの枠線の幅、線種、色*/
	padding: 15px 10px;		/*上下、左右へのボックス内の余白*/
	word-break: break-all;
}
/*左側ボックス*/
.ta1 th {
	width: 150px;	/*幅*/
	text-align: center;	/*センタリング*/
	font-weight: normal;
}

/*checkブロック。赤い注意書きブロックです。
---------------------------------------------------------------------------*/
p.check {
	background: #ff0000;
	color:#fff;
	padding: 10px 25px !important;
	margin-bottom: 20px;
}
p.check a {color: #fff;}

/*トップページのNEWアイコン
---------------------------------------------------------------------------*/
.newicon {
	background: #F00;	/*背景色*/
	color: #FFF;		/*文字色*/
	line-height: 1.5;
	padding: 2px 5px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: text-top;
	font-size: 1rem;
	font-weight: bold;
}

/* Bounce To Top */
.hvr-bounce-to-top {
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	position: relative;
	-webkit-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.5s;
	transition-duration: 0.5s;
  }
  .hvr-bounce-to-top:before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255, 246, 50, 0.8);
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: 50% 100%;
	transform-origin: 50% 100%;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.5s;
	transition-duration: 0.5s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
  }
  .hvr-bounce-to-top:hover, .hvr-bounce-to-top:focus, .hvr-bounce-to-top:active {
	color: white;
  }
  .hvr-bounce-to-top:hover:before, .hvr-bounce-to-top:focus:before, .hvr-bounce-to-top:active:before {
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
	-webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
	transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  }

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
/*通常時のボタンは非表示*/
body .nav-fix-pos-pagetop a {display: none;}
/*fixmenu_pagetop.jsで設定している設定値になったら出現するボタンスタイル*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a {
	font-size: 150%;
	display: block;text-decoration: none;text-align: center;
	width: 50px;		/*幅*/
	line-height: 50px;	/*高さ*/
	border-radius: 25px;
	z-index: 1;
	position: fixed;
	bottom: 20px;	/*下から20pxの場所に配置*/
	right: 3%;		/*右から3%の場所に配置*/
	background: #004d61;	/*背景色（古いブラウザ用）*/
	background: rgba(0,77,97,0.7);	
	color: #fff;	/*文字色*/
	border: 1px solid #fff;	/*枠線の幅、線種、色*/
	animation-name: opa1;	/*keyframes.cssで使う@keyframesの指定*/
	animation-duration: 1S;	/*アニメーションの実行時間*/
	animation-fill-mode: both;	/*アニメーションの待機中は最初のキーフレームを維持、終了後は最後のキーフレームを維持。*/
}
/*マウスオン時*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a:hover {
	background: rgba(40,117,137,0.7);	;	/*背景色*/
	font-size: 200%;
}

/*ul.disc,olタグ
---------------------------------------------------------------------------*/
ul.disc {
	list-style: disc;
	padding: 0 3% 20px 6%;
}
ol {
	padding: 0 3% 20px 6%;
}

/*その他
---------------------------------------------------------------------------*/
.clearfix::after {content: "";display: block;clear: both;}
.look {background: rgba(0,0,0,0.1);border: 1px solid #ccc;display: inline-block;padding: 0px 10px !important;border-radius: 4px;}
.mb15,.mb1em {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb50 {margin-bottom: 50px !important;}
.plr3p {padding-left: 3% !important;padding-right: 3% !important;}
.clear {clear: both;}
.color1, .color1 a {color: #ad83b4 !important;}
.wl {width: 96%;}
.ws {width: 50%;}
.w48p {width: 48%;}
.c {text-align: center !important;}
.r {text-align: right !important;}
.l {text-align: left !important;}
.fl {float: left;}
.fr {float: right;}
.sh {display: none;}
.ofh {overflow: hidden;}



/*画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px){

/*コンテンツ
---------------------------------------------------------------------------*/
#contents {
	padding: 50px 0px;	/*上下、左右へのコンテンツ内の余白*/

}

#contents .gallery .artwork .frame {	
	padding: 6px 4px;
	border-radius: 3px;
}

#contents .slide-gallery .artwork .frame {	
	padding: 6px 4px;
	border-radius: 3px;
}

}



/*画面が横向きの場合の設定、かつ、画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (orientation:landscape) and (max-width:800px){

/*メインメニューブロックの設定
---------------------------------------------------------------------------*/
/*メニューブロックの上に空ける余白*/
#menubar ul {
	margin-top: 80px;
}

}



/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px){

/*全体の設定
---------------------------------------------------------------------------*/
html,body {
	font-size: 12px;	/*画面幅480px以下で閲覧した際の文字サイズ。*/
}

/*ヘッダー
---------------------------------------------------------------------------*/
/*ロゴ画像*/
header #logo {
	left: 0%;	/*左からの配置場所*/
	width: 100%;	/*幅*/
	top: 30%;	/*上からの配置場所*/
	text-align: center;
}

/*３本バーアイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	top: 30px;	/*上からの配置場所*/
	left: 3%;	/*左からの配置場所*/
}

/*コンテンツ
---------------------------------------------------------------------------*/
/*h2タグ*/
#contents h2 {
	margin-bottom: 30px;
}
/*他、微調整*/
#contents section + section {
	margin-top: 50px;
}

/*テーブル（ta1）
---------------------------------------------------------------------------*/
/*ta1設定*/
.ta1, .ta1 td, .ta1 th {
	padding: 5px;	/*ボックス内の余白*/
}
/*ta1の左側ボックス*/
.ta1 th {
	width: 100px;
}

/*その他
---------------------------------------------------------------------------*/
.ws,.wl {width: 94%;}
.w48p {width: 100%;}
.fl {float: none;}
.fr {float: none;}
.sh {display:block;}
.pc {display:none;}

}