@charset "utf-8";

/*--
-------------------------------------------------- */	
.mag0{margin:0px;}
.mag6{margin:6px;}
.mag12{margin:12px;}
.mag24{margin:24px;}
.mag36{margin:36px;}
.mag48{margin:48px;}

.magTop0{margin-top:0px;}
.magTop6{margin-top:6px;}
.magTop12{margin-top:12px;}
.magTop24{margin-top:24px;}
.magTop36{margin-top:36px;}
.magTop48{margin-top:48px;}

.magBot0{margin-bottom:0px;}
.magBot6{margin-bottom:6px;}
.magBot12{margin-bottom:12px;}
.magBot24{margin-bottom:24px;}
.magBot36{margin-bottom:36px;}
.magBot48{margin-bottom:48px;}

.magLeft0{margin-left:0px;}
.magLeft12{margin-left:12px;}
.magLeft16{margin-left:16px;}
.magLeft24{margin-left:24px;}
.magLeft36{margin-left:36px;}
.magLeft48{margin-left:48px;}

.magRight0{margin-right:0px;}
.magRight12{margin-right:12px;}
.magRight16{margin-right:16px;}
.magRight24{margin-right:24px;}
.magRight36{margin-right:36px;}
.magRight48{margin-right:48px;}

.pad0{padding:0px;}
.pad10{padding:10px;}
.pad12{padding:12px;}
.pad24{padding:24px;}
.pad36{padding:36px;}
.pad48{padding:48px;}

.padTop0{padding-top:0px;}
.padTop10{padding-top:10px;}
.padTop12{padding-top:12px;}
.padTop24{padding-top:24px;}
.padTop36{padding-top:36px;}
.padTop48{padding-top:48px;}

.padBot0{padding-bottom:0px;}
.padBot10{padding-bottom:10px;}
.padBot12{padding-bottom:12px;}
.padBot24{padding-bottom:24px;}
.padBot36{padding-bottom:36px;}
.padBot48{padding-bottom:48px;}

.padLeft0{padding-left:0px;}
.padLeft10{padding-left:10px;}
.padLeft12{padding-left:12px;}
.padLeft24{padding-left:24px;}
.padLeft36{padding-left:36px;}
.padLeft48{padding-left:48px;}

.padRigh0{padding-right:0px;}
.padRigh10{padding-right:10px;}
.padRigh12{padding-right:12px;}
.padRigh24{padding-right:24px;}
.padRigh36{padding-right:36px;}
.padRigh48{padding-right:48px;}

.magLR12{margin:0 12px;}
.padLR12{padding:0 12px;}

.fLeft{float:left;}
.fRight{float:right;}
.cb{clear:both;}

.blockCenter,
.aligncenter{
	margin:0 auto;
}

.txtaligncenter{
	text-align:center;
}

.w100{width:100%;}
.w50{width:50%;}
.w64{width:64%;}
.w32{width:32%;}
.w25{width:25%;}

.font60{font-size:60%;}
.font80{font-size:80%;}
.font90{font-size:90%;}
.font100{font-size:100%;}
.font120{font-size:120%;}
.font140{font-size:140%;}
.font160{font-size:160%;}
.font180{font-size:180%;}
.font200{font-size:200%;}
.font240{font-size:240%;}

.fontColorOrange{color:#ff742d;}
.fontColorRed{color:#C00;}
.fontColorGreen{color:#090;}
.fontColorBlue{color:#06F;}
.fontColorPink{color:#cb8aa3;}
.fontColorYellow{color:#ffcf2d;}

.fontThemeColor{color:#58a0ea;}
.fontColorDrakNavy{color:#004185;}

.fontBold{font-weight:bold;}
.fontNorm{font-weight:normal;}

.em3H{height:3em;}

.border1gray{border:1px solid #ccc;}
.padding1{padding:1px;}

.smSup{
	vertical-align: super;
	font-size: 70%;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}


section:before,
section:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

section:after {
    clear: both;
}




html :where(.has-border-color) {
    border-style: solid
}

html :where([style*=border-top-color]) {
    border-top-style: solid
}

html :where([style*=border-right-color]) {
    border-right-style: solid
}

html :where([style*=border-bottom-color]) {
    border-bottom-style: solid
}

html :where([style*=border-left-color]) {
    border-left-style: solid
}

html :where([style*=border-width]) {
    border-style: solid
}

html :where([style*=border-top-width]) {
    border-top-style: solid
}

html :where([style*=border-right-width]) {
    border-right-style: solid
}

html :where([style*=border-bottom-width]) {
    border-bottom-style: solid
}

html :where([style*=border-left-width]) {
    border-left-style: solid
}

html :where(img[class*=wp-image-]) {
    height: auto;
    max-width: 100%
}



/* Text elements */
#contentWrapper p {margin-bottom: 1.5em;}

/* image elements */
#contentWrapper img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
	vertical-align:bottom;
}

/* Alignment */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

img.centered {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
	
img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

img.alignright {
	padding: 4px;
	margin: 12px 0 12px 24px;
	display: inline;
}

img.alignleft {
	padding: 4px;
	margin: 12px 24px 12px 0;
	display: inline;
}


/* ----------------------------------
 * Custom Styles
 * ---------------------------------- */
/* =Custom Styles
----------------------------------------------- */
#page{
	visibility:hidden;
	opacity:0;
}

.site-branding {
  margin-top: 20px;
  margin-bottom: 20px;
	padding:0;
}

#contentWrapper section{
	margin:30px 0;
}


@media (max-width: 480px) {
	.container {
		padding:0;
	}
}

@media (min-width: 768px) {
	.container {width: auto;}
}
 
@media (min-width: 992px) {
 .container {width: auto;}
}
 
@media (min-width: 1200px) {
  .container {
    max-width: 1170px;
  }
}

/* =Headings
----------------------------------------------- */
#contentRight h1{
	font-size:240%;
	margin-bottom:60px;
}

#topPage h2,
#contentRight h1{
    color: var(--color-main);
	position:relative;
	font-size:180%;
	padding:0 0.3em 0.4em;
	margin-bottom:20px;
	border-bottom: 4px solid #b0d4f9;
	font-weight:bold;
    line-height: 1.3em;
}

#topPage h2::after,
#contentRight h1::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 4px;
	background-color:#58a0ea;
}

#contentRight h2{
	font-size:140%;
	margin:1em 0;
	color:#004185;
	font-weight:bold;
}

#contentRight h3{
	font-size:110%;
	margin:0 0 0.4em 0;
	color:#3589df;
	font-weight:bold;
}

#contentRight h4{
	font-size:100%;
	margin:0 0 0.4em 0;
	font-weight:bold;
	color: #333;
}

#contentRight h5{
	font-size:100%;
	margin:0;
	color:#000;
	font-weight:bold;
}
#contentRight h6{
	font-size:140%;
	margin:0 0 1em 0;
	color:#004185;
	font-weight:bold;
}



/* ------Awardページ------ */
.awardItem{
	position:relative;
	border-top: 2px solid #c3bbac;
}

.awardItem :after{
	position: absolute;
	top: -2px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 2px;
	background-color:#624b22;
}

.awardItem h3{display:inline-block;}
#contentRight .awardItem h3.itemTitle{
    display:table-cell;
    vertical-align: middle;
    height: 120px;
    font-size: 24px;
    color: #604920;
    padding-left: 1em;
}
.awardItem .awardItemOrnament{float:left;}
.awardItem .awardItemImage{float:left;}
.awardItem .awardItemText{margin-left:140px;}
.awardItem .awardComment{margin-left:220px;}
.awardComment table{width:100%;}
.awardComment table th{
	text-align:right;
	vertical-align:bottom;
}
.awardComment table td{
	text-align:right;
	width:104px;
}

.talk_q{
   color:#0000CC;
   font-weight:bold;
}
.talk_box{width:100%;}
.talk_m01{
   margin-bottom:30px;
   clear:both;
}
.talk_m02{margin-top:12px;}
.talk_left{
   width:65%;
   float:left;
}
.talk_right{
   width:30%;
   float:right;
}

.tenji_box{
   width:216px;
   float:left;
}
.tenji_m01{margin-left:6px;}
.tenji_m02{
   margin-top:30px;
   clear:both;
}
.tenji_txt{
   font-size:12px;
   height:50px;
   padding:5px 0 0 0;
}
.tenji_btn{
   margin-top:5px;
   text-align:center;
}
.tenji_btn02{
   margin-top:24px;
   text-align:center;
}
.tenji_chusyaku{
   clear:both;
   text-align:right;
   margin-top:40px;
}

@media (max-width: 720px) {
	.awardItem .awardItemOrnament{width: 100px;}
	.awardItem .awardItemText{margin-left:100px;}
	.awardItem .awardComment{margin-left:0px; clear: both;}
}

/* Alignment */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

img.centered {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
	
img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

img.alignright {
	padding: 4px;
	margin: 12px 0 12px 24px;
	display: inline;
}

img.alignleft {
	padding: 4px;
	margin: 12px 24px 12px 0;
	display: inline;
}