@charset "utf-8";
/* CSS Document */

*{
	padding: 0;
	margin: 0;
}
*, *: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;
}
*:before, *:after {
    font-family: "Font Awesome 5 free";
    font-weight: bold;
}
img{
	width: 100%;
}

.main_box{
	max-width: 1200px;
	width: 90%;
	margin: auto;
	padding: 1rem 0;
}
.container{
	display: inline-block;
	width: 100%;
}
.float_l{
	float: left;
	width: 50%;
}
.float_r{
	float: right;
	width: 50%;
}
span.anchorlink {
	position: relative;
	top: -120px;
	display: block;
}

/* ==========================================================
 * reset
 * ========================================================*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,figure {
	margin: 0;
	padding: 0;
}
h1,h2,h3,h4,h5,h6,th,dt {
	font-weight: 400;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
q:before,q:after {
	content: '';
}
object,embed {
	vertical-align: top;
}
hr,legend {
	display: none;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}
img,abbr,acronym,fieldset {
	border: 0;
}
ol,ul {
	list-style-type: none;
}

/* ==========================================================
 * common
 * ========================================================*/
html {
	font: 62.5%;
}
body {
	font-size: 1rem;
	font-family: "Noto Sans JP", sans-serif;
	line-height: normal;
	color: #000000;
	background: #fff;
}
img {
	vertical-align: top;
	width: 100%;
}
p {
	text-align: justify;
}
*::selection {
	background: #81bb0d;
	color: #d0ff00;
}
*::-moz-selection {
	background: #81bb0d;
	color: #d0ff00;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
.clear {
	clear: both;
}
.left {
	float: left;
	width: 50%;
}
.right {
	float: right;
	width: calc(50% - 1px);
}
.center {
	margin: 0 auto !important;
}
.te_left {
	text-align: left !important;
}
.te_right {
	text-align: right !important;
}
.te_center {
	text-align: center !important;
}
.serif {
	font-family: 'Noto serif JP',serif;
}
.sans {
	font-family: 'Noto sans-serif JP',sans-serif;
}
.block {
	display: block !important;
}
.inline {
	display: inline !important;
}
.inline-b {
	display: inline-block !important;
}
.flex {
	display: flex !important;
}
.a_center{
	align-items: center;
}
.j_center{
	justify-content: center;
}
.j_sb{
	justify-content: space-between;
}
.relative {
	position: relative;
}
.absolute {
	position: absolute;
}
.noborder {
	border: none !important;
}
.nobg {
	background: none !important;
}
.no-margin-top {
	margin-top: 0 !important;
}
.d_tab{
	display: none !important;
}
.d_sp{
	display: none !important;
}
.d_tab_sp{
	display: none !important;
}
@media print, screen and (max-width: 1200px) {
	.d_tab{
		display: block !important;
	}
}
@media print, screen and (max-width: 999px) {
	.d_sp{
		display: none !important;
	}
}
@media print, screen and (max-width: 767px) {
	.d_pc{
		display: none !important;
	}
	.d_tab_sp{
		display: block !important;
	}
}
@media print, screen and (max-width: 480px) {
	.d_tab{
		display: none !important;
	}
	.d_sp{
		display: block !important;
	}
}
small {
	font-size: 90%;
	font-weight: normal;
}
strong {
	font-size: 110%;
	font-weight: bold;
}
a {
	outline: none;
	text-decoration: none;
}
a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
/* ie lt 8 */
	-ms-filter: alpha(opacity=80);
/* ie 8 */
	-moz-opacity: 0.8;
/* FF lt 1.5, Netscape */
	-khtml-opacity: 0.8;
/* Safari 1.x */
}
a img {
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-o-transition: all .3s ease;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.button {
	width: 200px;
	margin: 2rem auto;
	border: 1px solid #3da9f1;
	padding: 0.5rem 1rem;
	text-align: center;
	font-size: 1.1rem;
	font-family: "Noto Sans JP", sans-serif;
	transition: 0.2s;
	display: block;
	color: #fff;
	letter-spacing: 1px;
	background: #3da9f1;
    border-radius: 0.3rem;
}
.button:hover {
	background: #efefef;
	color: #3da9f1;
}
span.anchorlink {
	position: relative;
	top: -160px;
	display: block;
}
.b{
	font-weight: bold;
}
.black{
	color: #000;
}
.red{
	color: #e70110;
}
.yellow{
	color: #fff72e;
}
.green{
	color: #02908e;
}
.blue{
	color: #008ddb;
}
.navy{
	color: #013887;
}
.gray{
	color: #888;
}
.parple{
	color: #5f1c88;
}
.button.orange {
	background: #ef6854;
	border: 1px solid #ef6854;
}
.button.orange:hover {
	background: #fff;
	border: 1px solid #ef6854;
	color: #ef6854;
}
.small{
	font-size: 0.8rem;
}
.w-600 {
	max-width: 600px;
	margin: auto;
}
.w-700 {
	max-width: 700px;
	margin: auto;
}
/* ==========================================================
 * header
 * ========================================================*/
.header_bg {
	z-index: 1000;
	position: fixed;
	width: 100%;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 1px 1px 1px #7f7f7f;
	font-weight: 400;
}
header.cd-morph-dropdown {
	padding: 0.4rem 0 0;
	overflow: hidden;
}
header .main_box {
    padding: 0.5rem 0;
}
header img {
    max-width: 250px;
    height: 100%;
    margin: 0.5rem 2rem 0;
}
/*--left--*/
header .left {
	width: 70%;
}
header > div.right div .left a {
	font-family: 'Noto Serif JP', serif;
	color: #fff;
	font-size: 0.9rem;
	letter-spacing: 3px;
	transition: 0.2s;
	line-height: 1rem;
}
header > div.right div .left a:hover {
	color: #aaa;
}
/*--right--*/
header .right {
	width: 30%;
}
header > div.right > div {
	overflow: hidden;
}
header > div.right div .right {
	width: 30%;
	padding-top: 0.2rem;
}
header > div.right div .right ul {
	display: flex;
}
header > div.right div .right li>a {
	line-height: normal;
	color: #888;
	font-size: 1rem;
	font-weight: 500;
	margin: 0 0.2rem;
	transition: 0.2s;
}
header > div.right div .right li>a:hover {
	opacity: 0.6;
}
header .main-nav {
	margin-top: 0.2rem;
}
header .main-nav > ul > li {
	text-align: center;
	letter-spacing: 1px;
	display: inline-block;
	float: left;
	width: 20%;
	padding: 0 0 0.5rem;
}
header .main-nav > ul > li:before {
	content: " ";
	border-left: 1px solid #fff;
	height: 15px;
	float: left;
	margin-top: 5px;
}
header .main-nav span {
	font-family: "Marck Script";
	font-weight: normal;
	display: block;
	font-size: 0.5rem;
	margin-top: -0.1rem;
	letter-spacing: 0;
}
header .main-nav > ul > li{
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
		 -o-box-sizing: border-box;
		-ms-box-sizing: border-box;
			box-sizing: border-box;
}

header h1 {
	font-size: 1.8rem;
	margin-top: 0.5rem;
	color: #888;
}
header h1 span {
	font-size: 0.5rem;
	display: block;
	line-height: 1.8rem;
}
header .button {
    margin: 0;
}
/* ==========================================================
 * size
 * ========================================================*/
.w2 {
	width: 50%
}
.w3 {
	width: 33.3333%
}
.w4 {
	width: 25%
}
.w5 {
	width: 20%
}
/* ==========================================================
 * section
 * ========================================================*/
/*
section {
	padding: 2rem 0;
}
*/
section:last-child {
	padding-bottom: 5rem;
}
/* ==========================================================
 * accbox 
 * ========================================================*/
/*--=============アコーディオン=============--*/
/*ラベル*/
.accbox label {
	display: block;
	cursor :pointer;
	transition: all 0.5s;
}

/*チェックは隠す*/
.accbox input {
	display: none;
}

/*中身を非表示にしておく*/
.accbox .accshow {
	height: 0;
	padding: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.8s;
}

/*クリックで中身表示*/
.cssacc:checked + label + .accshow {
	height: auto;
	padding: 5px;
	/*background: #fff5eb;*/
	opacity: 1;
}

.accbox .accshow p {
	margin: 15px 10px
}
/* ==========================================================
 * footer
 * ========================================================*/
footer{
    background: #0e6fb7;
	color: #fff;
    padding: 1rem 0;
	margin-bottom: -.5rem;
}
footer ul {
	margin: 0 1.5rem 2rem;
}

footer li {
	padding: 1rem 0.2rem 0;
	color: #fff;
	width: 20%;
	text-align: center;
}
footer li span {
	font-size: 0.5rem;
	display: block;
}
footer li a {
	color: #fff;
}
footer dt {
	margin-bottom: 0.2rem;
}
footer dd {
	margin-left: 1rem;
	font-size: 0.9rem;
	padding-left: 0.5rem;
	border-left: 1px solid #eee;
	line-height: 1.5rem;
}
footer dd.under {
	padding-left: 1.5rem;
}

/* =========================================================
 * IE10～11に対応
 * =========================================================*/
@media all and (-ms-high-contrast: none){
	.sec1 .prev-arrow {
		padding: 0.7rem 0rem 0.3rem 1.1rem;
	}
	.sec1 .next-arrow {
		padding: 0.7rem 1.1rem 0.3rem 0rem;
	}
}