@charset "UTF-8";

/* ===============================
	utility
=============================== */

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	font-weight:normal;
}

p, ul, li {
	margin: 0;
	/* Android・文字サイズ対応 */
	max-height: 9999px;
	/* Android・文字の折り返し対応 */
	background: transparent;
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

a {
	text-decoration: none;
	/* スマホのハイライトデザインを無効にする */
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a:hover {
	text-decoration: none;
}
:focus {
	outline: none;
}

/* テキスト選択時 */
::selection {
	color: #ffffff;
	background: #000000;
}
::-moz-selection {
	color: #ffffff;
	background: #000000; /* Firefox */
}

.horizon {
	display: flex;
	flex-wrap: wrap;
}

.tc {
	text-align: center !important;
}

.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
  }  

  .empty { /* 最終行調整のhack */
	height: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	opacity: 0 !important;
}

ul.kome { /* リスト（※） */
	font-size: 1.3rem !important;
	line-height:1.6;
	padding-left: 1.5em;
	margin-top:2em;
}
ul.kome li {
	text-indent: -1.5em;
}
ul.kome li:BEFORE {
	content: "\203b";
	margin-right: 0.5em;
	color:#695912;
}

ul.dot { /* リスト（・） */
	padding-left: 1.5em;
}
ul.dot li {
	text-indent: -1em;
}
ul.dot li:BEFORE {
	content: "\02022";
	margin-right: 0.6em;
}

ul.num { /* リスト（連番） */
	counter-reset: number;
	padding-left: 1.5em;
}
ul.num li {
	text-indent: -1.3em;
}
ul.num li:BEFORE {
	counter-increment: number;
	content: counter(number)".";
	margin-right: 0.5em;
}

/* ===============================
	common base style
=============================== */
html,body{
    /* overflow-x: hidden; */
    height: 100%;
}
html{
	font-size: 62.5%; /* sets the base font to 10px for easier math */
}
body {
	font-family:'Noto Sans JP', sans-serif;
	font-weight: 400;
}

/* ===============================
	PC Style
=============================== */
@media print , screen and (min-width: 768px) {
	
	.pc { display: block !important; }
	.sp { display: none !important; }
	
	body {
		font-size: 1.5rem;
		line-height: 1.8;
	}
	main{
		margin-bottom:15em;
	}
	main, header, footer {
		min-width: 1200px;
	}
	.innerbox {
		width: 1200px;
		margin-left: auto;
		margin-right: auto;
	}
	.innerbox2 {
		width: 1120px;
		margin-left: auto;
		margin-right: auto;
	}

}

/* ===============================
	TAB / SP Style
=============================== */
@media screen and (max-width: 767px) {
	
	.pc { display: none !important; }
	.sp { display: block !important; }
			
	body {
		font-size: 1.4rem;
		line-height: 1.8;
	}
	main{
		width: 100%;
		margin-bottom:7em;
	}
	main img {
		width:100%;
		height: auto;
	}
	.innerbox, .innerbox2 {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
			
}

/* ===============================
	TAB Style
=============================== */
@media screen and (min-width:480px) and ( max-width:767px) {

	.sp { display: none !important; }

}

/* ===============================
	print only setting
=============================== */
@media print {
	
	.printNewPage {
		page-break-before: always;
	}
	
}