@charset "utf-8";

/*======================================

	Base CSS
	Copyright (c) 2018-, PROACTIVE Inc. All rights reserved.

=======================================*/

/**--------------------------------------
	00.GROBAL TAGS
---------------------------------------**/

html {
	font-size: 14px;
    display: flex;
    flex-flow: column;
    min-height: 100vh;
}
body {
	font-family: -apple-system, BlinkMacSystemFont, "メイリオ", Meiryo, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, sans-serif;
	color: #333;
	line-height: 1.8;
    min-width: 1200px;
    display: flex;
    flex-flow: column;
    min-height: 100vh;
    -webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

h1, h2, h3, h4, h5, h6, strong, b, em, th {
	font-weight: normal;
}

img{
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

ul, ol {
	list-style: none;
}

sup {
	font-size: .9em;
	vertical-align: top;
	position: relative;
	top: -0.15em;
}

a {
	word-break: break-all;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

main a {
    text-decoration: underline;
	color: #00f;
}

strong {
	font-weight: bold;
}

/**--------------------------------------
	01.BASIC_STRUCTURE
---------------------------------------**/
.inner {
	max-width:  980px;
	margin:  0 auto;
	padding: 0 2rem;
}
.inner:after {
	content: "";
  clear: both;
  display: block;
}
.w-50 {
	width: 50%;
}
.max {
	width: 100%;
}

/*----- 01-01.HEADER -----**/
#top-head {
	width: 100%;
	height: auto;
	line-height: 1;
	padding: .5rem 0;
}

#top-head .s-title {
	width: 1120px;
	margin: 0 auto;
	position: relative;
}
#top-head .header_subnav {
	position: absolute;
	top: 1rem;
    right: 0;
}
#top-head .header_subnav ul li {
	float: left;
}
#top-head .header_subnav ul li a{
	display: block;
    color: #40220F;
	width: 130px;
	padding: 1.25rem 0;
	text-align: center;
	cursor: pointer;
}
#top-head .header_subnav ul li a:hover {
	background-color: #40220F;
    color: #fff;
	text-decoration: none;
}


.f-right {
	float: right;
}
.f-left {
	float: left;
}
.flex-box {
	display: flex;
}
.flex-center {
	justify-content: center;
}
.flex-wrap {
    flex-wrap: wrap;
}
.flex-between {
    justify-content: space-between;
}
.flex-align-center{
  align-items: center;
}
.flex-column{
  flex-direction: column
}
.item1 {
	flex-grow: 1;
	text-align: center;
}
.item2 {
	flex-grow: 3
}
.flex-box img {
	width: 100%;
	height: auto;
}


/*-- Groval Navi --*/
#global-nav {
	margin: 0;
	font-size: 1rem;
	line-height: 1;
	z-index: 100;
    background-color: #40220F;
}
#gnav-list {
	width: 1120px;
	margin: 0 auto;
}
.gnav-right > ul {
	display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}
#gnav-list ul li {
    display: flex;
}
#gnav-list ul li a {
	display: block;
	color: #fff;
	width: 130px;
	padding: 1.25rem 0;
	text-align: center;
}

#gnav-list a[href]:hover {
	background-color: #fff;
    color: #40220F;
	text-decoration: none;
    cursor: pointer;
}
#gnav-list a:not([href]):hover {
    text-decoration: none;
}
#gnav-list .home {
	width: 80px;
}
#gnav-list .home:hover {
	text-decoration: none;
}
#gnav-list .home span {
	display: none;
}



/*----- 01-02.CONTENTS -----**/
main {
    display: block;
    flex: 1 1 auto;
    margin-bottom: 5rem;

}
#top-img {
    background-image: url("../img/main_background.png");
	background-size: cover;
	background-repeat: no-repeat;
}
article {
	margin: 0 auto 4rem auto;
}
article p {
	margin-bottom: 1rem;
}

table tr th,
table tr td {
	padding: .25em .5em;
	text-align: left;
	vertical-align: top;
}
table tr th {
	white-space: nowrap;
}

dl dd {
	margin: .25em 0 .5em 1em;
}

hr {
	border-top: 1px dotted #ccc;
}

picture img {
	width: 100%;
}

/*-- Totop --*/
	#pageTop {
	    display: none;
	    position: fixed;
	    bottom: 1.5rem;
	    right: 1.5rem;
		z-index: 200;
	}
	
	#pageTop a {
	    display: block;
	    z-index: 999;
	    width: 2.8rem;
	    height: 2.8rem;
		background-color: #A66832;
	    text-decoration: none;
		position: relative;
	}
	
	#pageTop a span {
		color: #fff;
		position: absolute;
		top: 50%;
    	left: 50%;
    	transform: translate(-50%, -50%);
    	-webkit-transform: translate(-50%, -50%);
    	-ms-transform: translate(-50%, -50%);
	}
	
@media (any-hover: hover) {
    #pageTop a:hover {
	    opacity: .7;
    }
}


/*----- 01-03.FOOTER -----**/
footer {
	background: #F4F2E6;
	padding-top: 1.5rem;
}
.footer-box {
	width: 1120px;
	margin: 0 auto;

}
footer dl dt {
	font-size: 1.2rem;
}
footer dl dd {
	margin-left: 0 ;
}
footer dl dd a {
	color: #111;
	text-decoration: underline;
}
footer ul {
	font-size: .95rem;
	padding: 4rem 0 1rem 0;
	clear: both;

}
footer ul li::before {
	content: "｜";
	padding: 0 .4rem;
}
footer ul li:first-child {
	content: none;
}
footer ul li a {
	color: #040f16;;
}
footer .copy {
	background: #40220F;
	color: #fff;
	padding: .5rem;
}

/**--------------------------------------
	02.PAGES
---------------------------------------**/
section {
	margin: 2rem 0 5rem;
}

.sub-sec {
	margin: 2rem 0;
}

/*
.contents {
	padding: 2rem 0 4rem 0;
}
*/
.column {
	display: -webkit-flex;
	display:  flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:  wrap;
	-webkit-justify-content:  space-between;
	justify-content:  space-between;
}

.column__item {
	width: 48%;
	margin: 1rem 0;
}

.m-btm--05 {
	margin-bottom: .5rem;
}

.m-btm--1 {
	margin-bottom: 1rem;
}

.m-btm--2 {
	margin-bottom: 2rem;
}

.m-btm--3 {
	margin-bottom: 3rem;
}

.m-btm--4 {
	margin-bottom: 4rem;
}

.m-btm--5 {
	margin-bottom: 5rem;
}

.m-top--05 {
	margin-top: .5rem;
}

.m-top--1 {
	margin-top: 1rem;
}

.m-top--2 {
	margin-top: 2rem;
}

.m-top--3 {
	margin-top: 3rem;
}

.m-top--4 {
	margin-top: 4rem;
}

.m-left--1 {
	margin-left: 1rem;
}

.m-left--2 {
	margin-left: 2rem;
}


/**--------------------------------------
	03.PARTS
---------------------------------------**/
/*----- 03-01.TITLE -----**/
.title--sec1 {
	font-size: 2.25rem;
	text-align: center;
	margin: 2rem 0 1.5rem 0;
}
.title--sec1::before {
	position: relative;
	top:.5rem;
	margin: 0 .5rem 0 0;
	content: url("../img/sec1.svg");
}
.title--sec2 {
	font-size: 1.7rem;
	line-height: 1.4;
	margin-bottom: 1rem;
	border-bottom: 2px solid #A66832;
}
.title--sec2::before {
	content: "■";
	color: #A66832;
	font-size: 1rem;
	padding-right: .5rem;
	vertical-align: middle;
}
.title--sec3 {
	font-size: 1.25rem;
	margin-top: 2rem;
	margin-bottom: 1rem;
	border-bottom: 1px dotted #333;
	padding: .5rem 0 .5rem 1.5rem;
	position: relative;
}
.title--sec3::before {
	content: "";
	background-color: #B9782F;
	width: .7rem;
	height: 4px;
	vertical-align: middle;
	position: absolute;
	left: 0;
	top: 50%;
}

.title--sec4 {
	font-size: 1.1rem;
	margin-top: .5rem;
	margin-bottom: 1rem;
	color: #444;
	font-weight: bold;
    background-color: #f5f5f5; 
	border-left: 5px solid #155678;
	padding-left: .8rem;
}
.title--sec5 {
	font-size: 1.1rem;
	font-weight: bold;
}

/*----- 03-02.LIST -----**/
.list--sq,
.list--notes {
	margin-left: 1em;
	line-height: 1.5;
}

.list--disc,
.list--num {
	margin-left: 1.5em;
	line-height: 1.5;
}

.list--disc li,
.list--sq li,
.list--num li,
.list--notes li {
	margin-bottom: .5em;
}

.list--disc {
	list-style: disc;
}

.list--sq {
	list-style: square;
}

.list--num {
	list-style: decimal;
}

.list--notes li {
	text-indent: -1em;
}

/*-- File Link --*/
.list--link {
}

.list--link li {
	margin-bottom: 1.5em;
    padding-bottom: 1rem;
    border-bottom: 1px dotted #ccc;
}

.list--border li {
    border-bottom: dotted 1px #ccc;
}

.list--link li a {
	padding: .5em 0 .5em 2.5em;
    text-decoration: none;
}

.list--link li a[href$=".pdf"] {
	background: url(../img/icon_pdf.svg) left center no-repeat;
	background-size: 2em 2em;
}

.list--link li a[href$=".docx"],
.list--link li a[href$=".doc"]{
	background: url(../img/icon_doc.svg) left center no-repeat;
	background-size: 2em 2em;
}

.list--link li a[href$=".xlsx"],
.list--link li a[href$=".xls"]{
	background: url(../img/icon_xls.svg) left center no-repeat;
	background-size: 2em 2em;
}

.list--link li a[href$=".pptx"],
.list--link li a[href$=".ppt"]{
	background: url(../img/icon_ppt.svg) left center no-repeat;
	background-size: 2em 2em;
}

.list--link li a[href^="http://"],
.list--link li a[href^="https://"]{
	background: url(../img/icon_link.svg) left center no-repeat;
	background-size: 2em 2em;
}


/*----- 03-03.TABLE -----**/
.area-over {
	width:  100%;
	overflow-x: auto;
	padding: .5em 0 1.5em 0;
}

caption {
	text-align: left;
	margin-bottom: .5rem;
}

.table-bdr thead {
	background-color: #E5EBF8;
	color: #214c9e;
}

.table-bdr tr th,
.table-bdr tr td {
	border: 1px solid #ccc;
	padding: 1rem;
}

.table-bdr tr th{
	font-weight: bold;
	background-color: #F4F2E6;
}

.table--list dt,
.table--list dd {
	padding-top: .5em;
}

.table--list dt {
	border-bottom: 1px solid #ccc;
}


/*----- 03-04.TEXT -----**/
.ft-s--SS {
	font-size: .8rem;
}

.ft-s--S {
	font-size: .9rem;
}

.ft-s--L {
	font-size: 1.2rem;
}

.ft-s--LL {
	font-size: 1.5rem;
}

.ft-c--R {
	color: #dc143c;
}

.ft-c--B {
	color: #3669ab
}

.ft-w--bold {
	font-weight: bold;
}

.ft-w--def {
	font-weight: normal;
}

.ft-sty--italic {
	font-style: italic;
}

.txt--center {
	text-align: center;
}

.txt--right {
	text-align: right;
}

.txt--under-line {
	text-decoration: underline;
}

/*----- 03-05.BACKGROUND -----**/
.bg-c--Gry {
	background-color: #f7f7f7;
	padding: 1rem;
}

/*----- 03-06.BUTTON -----**/

.btn1 {
	display: inline-block;
	padding: .5rem 1.5rem;
	text-align: center;
	text-decoration: none;
	background-color: #094480;
	border: 2px solid #094480;
	border-radius: 4px;
	color: #fff;
	font-weight: bold;
	letter-spacing: .1rem;
}

.btn1:hover {
	text-decoration: none;
	background-color: #fff;
	color: #094480;
}

/*.btn2 {
	display: inline-block;
	padding: .5rem 1.5rem;
	text-align: center;
	text-decoration: none;
	background-color: #E9E4F7;
	border: 2px solid #8f76d6;
	border-radius: 4px;
	color: #222;
	font-weight: bold;
}

.btn2:hover {
	text-decoration: none;
	background-color: #8f76d6;
	color: #fff;
}*/

/*----- 03-07.BOX -----**/
.box {
    margin: 1rem;
    padding: 1rem;
    border: 1px solid #333;
}
.box--Bl {
    border: 1px solid #094480;
}


/*---------------------------------------

	MODULES
	
---------------------------------------**/

/*----- MO_01.CLEARFIX -----**/

.clearfix {zoom:1;}
.clearfix:after {
	content: ""; 
	display: block; 
	clear: both;
}
