@charset "utf-8";

.st-contents {
    margin-bottom: 6.875%;
}

.st-contents_main {
    margin-bottom: 6.875%;
}

a {
}

a:visited {
}
#wrapper {
    position: relative;
    width: 100%;
}
#wrapper_home {
    position: relative;
    width: 100%;
    background: url(../images/common/top-bk.jpg) center top no-repeat;
    /*min-height: 881px;*/
}
#wrapper_main {
    position: relative;
    width: 100%;
    background: url(../images/common/main-bk.jpg) center top no-repeat;
}
@media print, screen and (max-width: 640px) {
	#wrapper_home {
		background: none;
	}
	#wrapper_main {
		background: none;
	}
}

@media print, screen and (min-width: 641px) {
	.st-contents {
	    width: 1100px;
	    margin: 0 auto 0;
		background-image: url(../images/common/bk_menu.png);
        background-repeat: repeat-y;
	}
	.st-contents_main {
	    width: 1100px;
	    margin: 0 auto 36px;
		background-image:url(../images/common/main_bg.png);
		background-repeat:no-repeat;
	}
}

.st-header__inner {
	height: 66px;
/*	height: 18.75vw;
	margin-bottom: 2%;
*/}

.st-header__inner h1 {
    position: absolute;
   width: 80%;
    margin: auto;
    top: 3.75vw;
    left: 3%;
}

/* ! Menu for Smartphone
----------------------------------------------- */

@media screen and (max-width: 640px) {

	#js-menu-button, #js-menu-button span {
		display: inline-block;
		transition: all .4s;
		-webkit-transition: all .4s;
		box-sizing: border-box;
	}

	#js-menu-button {
		position: absolute;
		cursor: pointer;
		width: 9.6875vw;
		height: 6.5vw;
		top: 4.75vw;
		right: 3.375%;
	}

	#js-menu-button span {
	    position: absolute;
	    margin: auto;
	    left: 0;
	    right: 0;
		width: 9.6875vw;
		height: 1.5vw;
	    background-color: #ba1d22;
	}

	#js-menu-button span:nth-of-type(1) {
		top: 0vw;
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	#js-menu-button span:nth-of-type(2) {
		top: 3vw;
	}
	#js-menu-button span:nth-of-type(3) {
		top: 6vw;
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	#js-menu-button.active {
		width: 9.6875vw;
		height: 8.125vw;
	}

	#js-menu-button.active span:nth-of-type(1) {
		top: 4.8vw;
		-webkit-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}
	#js-menu-button.active span:nth-of-type(2) {
		opacity: 0;
	}
	#js-menu-button.active span:nth-of-type(3) {
		bottom: 3.5vw;
		-webkit-transform: rotate(315deg);
		transform: rotate(315deg);
	}

	#js-navigation {
		display: none;
		background-color: #fef9f4;
	}
	.st-header__menu__inner ul {
		list-style-type: none;
		font-size: 3.75vw;
		line-height: 1.4;
		font-weight: bold;
		background-color:#fff;
		font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
	}
	.st-header__menu__inner ul li {
		position: relative;
		border-top: solid 1px #145397;
	}

	.st-header__menu__inner ul li:last-child{
		border-bottom: solid 2px #145397;
	}

	.st-header__menu__inner ul li a {
	    display: block;
	    padding: 3% 4.375% 2.5% 6.25%;
	    width: 100vw;
	    color: #110c0c;
		background: #fff;
	}

	/*.st-header__menu__inner ul li a::before {
		content: '';
	    position: absolute;
	    width: 0;
	    height: 0;
	    border-style: solid;
	    border-width: 1.25vw 0 1.25vw 1.25vw;
	    border-color: transparent transparent transparent #fff;
	    margin: auto;
	    top: 0;
	    bottom: 0;
	    left: 3.375%;
	}*/

	.st-header__menu__inner ul li a:hover,
	.st-header__menu__inner ul li a.m-select {
/*	    background-color: #2a4359;*/
		background: #145397;
	    color: #fff;
	}

	.st-header__menu__inner ul li a:hover::before,
	.st-header__menu__inner ul li a.m-select::before {
		content: '';
		display: inline-block;
		width: 7px;
		height: 7px;
		background-color: transparent;
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		position: absolute;
		top: 50%;
		left: 8px;
		transform: translateY(-50%) rotate(-45deg);
	}

	.st-header__menu__inner ul li a.m-mice {
		background: #af2c2c;
	    color: #fff;
	}

	.st-header__menu__inner ul li a.m-mice:hover {
	    color: #ffdb8f;
	}

	.st-header__menu__inner ul li a.m-mice::before {
	    border-color: transparent transparent transparent #fff;
	}

	.st-header__menu__inner ul li a.r-form {
		background: #d2691e;
	    color: #fff;
	}

	.top_bnr00 {
		padding: 0 5px;
		margin: 0 auto;
		margin-bottom:20px;
		text-align: center;
		max-width:300px;
	}
    .top_bnr_wk {
        border: solid 1px #999;
		margin:10px;
    }
    .top_bnr_insta {
		display:block;
		margin: 0 auto;
		padding:10px;
    }
	.top_bnr00 li {
	width: 50%;
    padding: 5px;
    margin: 0 auto;
    text-align: center;
    box-sizing: border-box;
    list-style: none;
}
    .top_bnr00 li img {
		width: 100%;
		height: auto;
		max-width: 175px;
		margin: 0 auto;
	}
	.top_bnr01 {
		padding: 0 5px;
	}
	.top_bnr01 li {
	width: 50%;
    padding: 5px;
    margin: 0;
    text-align: center;
    box-sizing: border-box;
    float: left;
    list-style: none;
}
    .top_bnr01 li img {
		width: 100%;
		height: auto;
		max-width: 175px;
		margin: 0 auto;
	}
	.top_bnr02 {
		padding: 0 5px;
	}
	.top_bnr02 li {
	width: 50%;
    padding: 5px;
    margin: 0;
    text-align: center;
    box-sizing: border-box;
    float: left;
    list-style: none;
}
    .top_bnr02 li img {
		width: 100%;
		height: auto;
		max-width: 175px;
		margin: 0 auto;
	}
}

/* ! Menu for PC - st-side
----------------------------------------------- */

@media print, screen and (min-width: 641px) {
	#js-navigation {
		display: block !important;
		overflow: unset !important;
	}
	.st-header__menu__inner {
		float: left;
		width: 246px;
		margin-bottom:50px;
	}
	.st-header__menu__inner ul {
		list-style-type: none;
		font-size: 15.5px;
		line-height: 1.51;
		background-color:#fff;
		font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
		font-weight: bold;
		border-left: solid 1px #145397;
		border-right: solid 1px #145397;
	}
	.st-header__menu__inner ul li {
		position: relative;
		border-top: solid 1px #145397;
		background: #fff;
	}

	.st-header__menu__inner ul li:last-child{
		border-bottom: solid 1px #145397;
	}

	.st-header__menu__inner ul li a {
	    display: block;
	    padding: 12px 2px 12px 20px;
	    width: 100%;
	    color: #110c0c;
		/*background: url(../images/common/icon_menu.png) right 2px bottom 2px no-repeat;*/
	}

	.st-header__menu__inner ul li a::before {
		content: '';
		display: inline-block;
		width: 7px;
		height: 7px;
		background-color: transparent;
		border-right: 2px solid #ba1d22;
		border-bottom: 2px solid #ba1d22;
		position: absolute;
		top: 50%;
		left: 5px;
		transform: translateY(-50%) rotate(-45deg);
	}

	.st-header__menu__inner ul li a:hover,
	.st-header__menu__inner ul li a.m-select {
	    color: #fff;
		background:#145397;
	}

	.st-header__menu__inner ul li a:hover::before,
	.st-header__menu__inner ul li a.m-select::before {
		content: '';
		display: inline-block;
		width: 7px;
		height: 7px;
		background-color: transparent;
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		position: absolute;
		top: 50%;
		left: 5px;
		transform: translateY(-50%) rotate(-45deg);
	}

	.st-header__menu__inner ul li a.m-mice {
		background: #af2c2c;
	    color: #fff;
	}

	.st-header__menu__inner ul li a.m-mice:hover {
	    color: #ffdb8f;
	}

	.st-header__menu__inner ul li a.m-mice::before {
	    border-color: transparent transparent transparent #fff;
	}

	.st-header__menu__inner ul li a.r-form {
		background: #d2691e;
	    color: #fff;
	}
	




	

	.st-header__menu__inner ul li.btnmenu {
		border-bottom: none;
		background: #fff;
		margin-top:15px;
	}

    .top_bnr00{
		margin: 0 auto;
		margin-top: 0px;
		text-align:center;
    }

    .top_bnr00 img{
		margin-bottom:1em;
		width:200px;
    }
    .top_bnr_wk {
        border: solid 1px #999;
    }
    .top_bnr_insta {
		display:block;
		margin: 0 auto;
    }
    .top_bnr00 ul,
    .top_bnr00 li {
		list-style: none;
    }

    .top_bnr00 li {
		float: left;
		margin-right: 5px;
    }

    .top_bnr00 li img {
		width: 100%;
	}
    .top_bnr01{
		margin: 0 auto;
		margin-top: 20px;
		text-align:center;
    }

    .top_bnr01 img{
		margin-bottom:1em;
    }

    .top_bnr01 ul,
    .top_bnr01 li {
		list-style: none;
    }

    .top_bnr01 li {
		float: left;
		margin-right: 5px;
    }

    .top_bnr01 li img {
		width: 100%;
	}
    .top_bnr02{
		margin: 0 auto;
		margin-bottom:20px;
		text-align:center;
    }

    .top_bnr02 img{
		margin-bottom:1em;
    }

    .top_bnr02 ul,
    .top_bnr02 li {
		list-style: none;
    }

    .top_bnr02 li {
		float: left;
		margin-right: 5px;
    }

    .top_bnr02 li img {
		width: 100%;
	}
}


/* ! st-footer
----------------------------------------------- */

.st-footer {
    background-color: #eee;
	color: #000;
}

.st-footer .st-footer__inner {
    width: 100%;
    padding: 2.75% 4.375%;
    font-size: 2.8125vw;
    line-height: 1.5;
}
.st-footer dl {
	margin-bottom:5px;
}
.st-footer dt {
	font-weight:bold;
	color:#145397;
}
.st-footer .st-footer__inner p {
	margin-bottom:1em;
}
.st-footer .st-footer__inner p {
	margin-bottom:1em;
}

.st-footer .st-footer__inner a {
    color: #000;
}

.st-footer .st-footer__inner a:hover {
	text-decoration:underline;
}

.st-footer__copyright {
    background-color: #145397;
}

.st-footer__copyright p {
    width: 100%;
    margin: 0 auto;
    padding: 2.75% 3.75%;
    font-size: 2.03125vw;
    text-align: center;
    color: #fff;
}

@media print, screen and (min-width: 641px) {
	.st-footer {
		width: 	100%;
		margin: 0 auto;
		margin-bottom:20px;
		background-color:#eee;
		color:#000;
	}
	.st-footer dl {
		margin-top:10px;
	}
	.st-footer dt {
		float:left;
		width: 84px;
		display:table-cell;
		white-space:nowrap;
		font-weight:bold;
		color: #145397;
	}
	.st-footer dd {
		width: 812px;
		line-height: 1.6em;
		display:table-cell;
	}
	.st-footer .st-footer__inner {
	    padding: 10px 5px 15px 0;
        font-size: 13px;
        width: 851px;
	}

	.st-footer .st-footer__inner span {
		padding-left: 7.5rem;
	}

	.st-footer__copyright p {
	    padding: 12px 0;
	    font-size: 11px;
		color:#fff;
	}
}

/* ! st-footer__pageTop
----------------------------------------------- */

.st-footer__pageTop {
    display: none;
    position: fixed;
    width: 12.5%;
    bottom: 28.75vw;
    right: 4.375%;
    z-index: 9999;
}

.st-footer__pageTop a {
    position: relative;
    display: block;
    background-color: #fff;
    text-align: center;
    border-radius: 5px;
    border: solid 2px #2471c5;
}

.st-footer__pageTop a span {
    position: relative;
    display: block;
    padding: 50% 0 15%;
    width: 100%;
    font-size: 3.6vw;
    color: #2471c5;
    text-decoration: none;
}

.st-footer__pageTop a span::before {
    position: absolute;
    content: '';
    margin: auto;
    left: 0;
    right: 0;
    top: 2vw;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 1.5vw 2vw 1.5vw;
    border-color: transparent transparent #2471c5 transparent;

}

@media print, screen and (min-width: 641px) {
	.st-footer__pageTop {
	    width: 64px;
	    bottom: 84px;
	    right: 10px;
	}

	.st-footer__pageTop a span {
	    padding: 30px 0 10px;
	    width: 100%;
	    font-size: 20px;
	}

	.st-footer__pageTop a span::before {
	    top: 8px;
	    border-width: 0 10px 12px 10px;
	}
}


/**/


.btn-semi p { text-align:center; margin:auto; }
.btn-semi a { display:block; width:100%; line-height:20px; background:#ba1d22; text-align:center; padding:15px 10px; color:#fff; text-decoration:none; position:relative; width: 200px; }
.btn-semi a img { vertical-align: top; margin: 0 0 0 10px; padding: 0; border: none; }
.btn-semi a:after { content:""; position:absolute; bottom:5px; right:0; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-top:8px solid #fff; transform:rotate(-45deg); }
.btn-semi a:hover { opacity:0.8; transition:0.2s ease-in-out; }

/**/
.btn-basic p { text-align:center; margin:auto; }
.btn-basic a { display:block; width:100%; line-height:20px; background:#ff6666; text-align:center; margin:auto; padding:15px 10px; color:#fff; text-decoration:none; position:relative; width: 250px; }
.btn-basic a img { vertical-align: top; margin: 0 0 0 10px; padding: 0; border: none; }
.btn-basic a:after { content:""; position:absolute; bottom:5px; right:0; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-top:8px solid #fff; transform:rotate(-45deg); }
.btn-basic a:hover { opacity:0.8; transition:0.2s ease-in-out; }

/**/

.btn-basic2 p { text-align:center; margin:auto; }
.btn-basic2 a { display:block; width:100%; line-height:20px; background:#ba1d22; text-align:center; margin:auto; padding:15px 10px; color:#fff; text-decoration:none; position:relative; width: 250px; }
.btn-basic2 a img { vertical-align: top; margin: 0 0 0 10px; padding: 0; border: none; }
.btn-basic2 a:before { content:""; position:absolute; bottom:5px; right:0; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-top:8px solid #fff; transform:rotate(-45deg); }
.btn-basic2 a:hover { opacity:0.8; transition:0.2s ease-in-out; }

	.btn-basic2 a.pdf_link::after {
	    content: "　";
	    font-family: FontAwesome;
	    content: '\f1c1';
	    position: absolute;
	    margin: auto;
	    top: 15px;
	    bottom: 0;
	    right: 15px;
	    color: #fff;
	    font-weight: 100;
	    font-size: 20px;
}

/**/

.regi_sofu01 {
	color: #ba1d22;
	font-weight: bold;
	display: flex;
	margin-bottom: 20px;
}

.regi_sofu01 dt,
.regi_sofu01 dd {
	margin: 0;
	padding: 0;
	font-size: 1.5rem;
	line-height: 1.8;
}

.regi_sofu01 dt {
	white-space: nowrap;
}

.regi_sofu01 dd p {
	margin-bottom: 5px!important;
	line-height: 1.6!important;
}

@media print, screen and (max-width: 640px) {
	.regi_sofu01 {
		display: inline;
		margin-bottom: 0;
	}

	.regi_sofu01 dt {
		white-space: normal;
		margin-bottom: 5px!important;
	}
	.regi_sofu01 dd {
		margin-bottom: 20px;
	}
	
	
	.st-header__inner .st-side {
		text-align: center;
		padding: 5px 0 0 0;
	}

	.st-header__inner .st-side img{
		padding: 5px;
		width: 34%;
	}

.btn-semi a { display:block; width:100%; line-height:20px; background:#ba1d22; text-align:center; margin:auto; padding:15px 10px; color:#fff; text-decoration:none; position:relative; width: 200px; }

.jp-btn {
	width:50%;
	display:block;
	float:left;
    font-size: 1.4em;
	font-weight:bold;
	text-align:center;	
	padding: 10px 5px 10px 5px;
	color: #fff;
	background: #ac2b2e;
}
.jp-btn a {
	color: #fff;
}

.jp-btn a:hover {
	color:#ff0;
}


.en-btn {
	width:50%;
	display:block;
	float:left;
    font-size: 1.4em;
	font-weight:bold;
	text-align:center;	
	padding: 10px 5px 10px 5px;
	color: #fff;
	background: #868686;
}
.en-btn a {
	color: #fff;
}

.en-btn a:hover {
	color:#ff0;
}
.language {
    max-width: 100%;
    clear: both;
    overflow: hidden;}
}




.top-h1 {
    position: relative;
    max-width: 924px;
}

.top-h1 img {
	/*width:100%;*/
}

.top-h1 h1 {
}

.top-img {
}

.top-img img {
	/*width:100%;*/
}

.main-h1 h1 {
	margin-left:0px;
	height:78px;
}

.main-h1 h1 img {
	width: 488px;
	/*margin: 5px 0 0 5px;*/
}


.abst-period {
	margin-right: auto;
	margin-left: auto;
	margin-top: 20px;
	font-size:1.6rem;
}

.abst-period dt {
	line-height: 1.2em;
    float: left;
	text-align:center;
/*	width:145px;
*/	font-weight:bold;
}

.abst-period dd {
	line-height: 1.2em;
	color: #000;
	text-align: left;
	margin-bottom: 10px;
	font-size:1.6rem;
	font-weight:bold;
}

.uchikeshi {/*打ち消し線*/
text-decoration: line-through;
color: #ff0000;
}

.uchikeshi .mojikuro{/*打ち消し線文字*/
color: #000000;
}




.st-contents .info-box {
	margin: 3.75% 4.375%;
}

.st-contents .info-box h2 {
    font-size: 5.625vw;
    font-weight: normal;
    color: #fff;
    text-align: left;
    padding: 3.125%;
}

.st-contents .info-box .info-inner {
    font-size: 3.75vw;
    padding: 4.375%;
/*    height: 62.5vw;
    overflow-y: auto;
*/}

.st-contents .info-box .info-inner dl{
    padding: 1.8% 0;
    line-height: 1.4;
    border-bottom: 1px dashed #ccc;
}

.st-contents .info-box .info-inner dl:first-child{
    padding-top: 0;
}

.st-contents .info-box .info-inner dl:last-child{
    padding-bottom: 0;
    border-bottom: none;
}

.st-contents .info-box .info-inner dt.new span{
    position: relative;
}

.st-contents .info-box .info-inner dt.new span::after{
    content: 'new';
    position: absolute;
    margin-left: 1rem;
    background-color: #c00;
    border-radius: 2px;
    padding: 0 1%;
    font-size: 3.125vw;
    color: #fff;
}

@media print, screen and (min-width: 641px) {
    .st-contents .info-bk {
        width: 822px;
/*		background:url(../images/top/whatsnew.jpg) no-repeat;
*/    }

    .st-contents .info-bk .info-box {
        width: 822px;
        margin: 0 auto;
    }

    .st-contents .info-box h2 {
        font-size: 20px;
        text-align: left;
        padding: 12px 0 8px 20px;
    }

    .st-contents .info-box .info-inner {
        font-size: 14px;
        padding: 16px 24px;
        height: 156px;
    }

    .st-contents .info-box .info-inner dl{
        display: table;
        padding: 16px 0;
        line-height: 1.4;
    }

    .st-contents .info-box .info-inner dl dt {
        display: table-cell;
        width: 132px;
        vertical-align: top;
    }

    .st-contents .info-box .info-inner dl dd {
        display: table-cell;
        width: 643px;
        vertical-align: top;
   }

    .st-contents .info-box .info-inner dt.new span::after{
        margin-left: 1rem;
        padding: 0 3px;
        font-size: 12px;
    }

.jp-btn {
	width: 123px;
    display: inline-block;
    font-size: 1.4em;
	font-weight:bold;
	text-align:center;	
	padding: 15px 5px 15px 5px;
	color: #fff;
	background: #ac2b2e;
}

.jp-btn a {
	color: #fff;
}

.jp-btn a:hover {
	color:#ff0;
}

.en-btn {
	width: 123px;
    display: inline-block;
    font-size: 1.4em;
	font-weight:bold;
	text-align:center;	
	padding: 15px 5px 15px 5px;
	color: #fff;
	background: #868686;
}
.en-btn a {
	color: #fff;
}

.en-btn a:hover {
	color:#ff0;
}

.language {
	padding-top: 10px;
	padding-bottom: 10px;
	width: 246px;
	background: #fff;
}

