@charset "UTF-8";

@media print, screen and (min-width: 701px) {
	.display-sp {
		display:none !important;
	}
}

@media screen and ( max-width:700px) {
	.display-pc {
		display:none !important;
	}
}

@media print, screen and (min-width: 961px) {
	.display-tab-sp {
		display:none !important;
	}
}

@media screen and ( max-width:960px) {
	.display-pc-only {
		display:none !important;
	}
}

div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0; 
	padding:0; 
	letter-spacing:0;
	color:#000;
	font-family: "Meiryo UI", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Helvetica Neue", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal; 
	font-weight:normal; 
}
ul, ol, dl {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
caption,th {
	text-align:left; 
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%; 
	font-weight:normal; 
}
a:link {
	text-decoration: underline;
}
a:visited {
	color:#00e;
	text-decoration: underline;
}
a:hover, a:active, a:focus {
	text-decoration: none;
}

/* ---------- custom -------------------------------------------------- */
* {
	box-sizing:border-box;
	margin: 0;
	padding: 0;
	transition: 0.3s ease-in-out;
}
img {
	margin:0;
	padding:0;
	vertical-align: bottom;
	width:100%;
}
a img {
	border: none;
}


.main-wrap {
	overflow:hidden;
	position:relative;
}

.main-logo {
	position:absolute;
}

@media print, screen and (min-width: 1189px) {
	.main-logo {
		top: 52.5%;
    	left: 50%;
		transform: translate(-50%, -50%);
	}
}

@media print, screen and (min-width: 1401px) {
	.main-logo {
		width:1050px;
	}
}

@media screen and (min-width:1335px) and ( max-width:1400px) {
	.main-logo {
		width:75%;
	}
}

.catch-tate-base {
	width:5.26%;
	position:absolute;
	top:0;
	left:0;
	background-color: #2c6cb4;
	mix-blend-mode: multiply;
}

.catch-tate {
	width:5.26%;
	position:absolute;
	top:0;
	left:0;
}

@media screen and (min-width:961px) and ( max-width:1334px) {
	.main-wrap {
		width:100%;
		height:479px;
	}
	.main-pc {
		position: absolute;
		width:1334px;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.catch-tate-base,
	 .catch-tate {
	 	width:70px;
	}
}

@media screen and (min-width:1231px) and ( max-width:1334px) {
	.main-logo {
		width:1000px;
	}
}

@media screen and (min-width:961px) and ( max-width:1230px) {
	.main-logo {
		width:84%;
		top: 53%;
    	left: 52.5%;
		transform: translate(-50%, -50%);
	}
}

@media print, screen and (min-width: 961px) {
	.header-menu-bg-wrap {
		width:700px;
		position:absolute;
		top:0;
		right:2.4%;
		mix-blend-mode: multiply;
	}
	.header-menu-wrap {
		width:700px;
		position:absolute;
		top:0;
		right:2.4%;
		padding:0 25px 0;
	}
	.menu-spacer {
		aspect-ratio: 36 / 1;
	}
	.header-menu-inner {
		display:flex;
		border-right:1px solid #fff;
	}
	.header-menu-box {
		width:33.333%;
		display:flex;
		border-left:1px solid #fff;
	}
    
    .header-menu-box img {
        width:70%;
        margin: 0 auto;
    }
}

@media print, screen and (min-width: 1231px) {
	.header-menu-bg-wrap,
	.header-menu-wrap {
		width:750px;
	}
}

@media print, screen and (min-width: 961px) {
	.header-menu-sp-wrap {
		display:none !important;
	}
}

@media screen and ( max-width:960px) {
	.header-menu-sp-wrap {
		background:#4d4d4d;
		padding:10px 0;
	}
	.header-menu-sp-inner {
		max-width:770px;
		margin:0 auto;
		display:flex;
		border-right:1px solid #fff;
	}
	.header-menu-sp-box {
		width:33.3333%;
		text-align:center;
		border-left:1px solid #fff;
	}
    
    .header-menu-sp-box img {
        width: 70%
    }
}

@media screen and ( max-width:770px) {
	.header-menu-sp-inner {
		border-right:none;
	}
	.header-menu-sp-box:first-child {
		border-left:none;
	}
}

.sub-menu-wrap {
	background:#4d4d4d;
	display:flex;
	justify-content: space-between;
	padding:0 45px 0 29px;
}

.sub-menu-left {
	display:flex;
	justify-content: space-between;
}

.sub-menu-right {
	display:flex;
	align-items: center;
	padding-bottom:5px;
}

@media print, screen and (min-width: 1101px) {
	.sub-menu-left {
		width:594px;
	}
	.sub-menu-right {
		width:138px;
	}
}

@media screen and ( max-width:1100px) {
	.sub-menu-left {
		width:58%;
	}
	.sub-menu-right {
		width:14%;
	}
}

.sub-menu-btn-wrap {
	width:43.686%;
}

.sub-menu-btn {
	display:flex;
	border-bottom:1px solid #fff;
}

.sub-menu-btn:last-child {
	border-bottom:none;
}

.sub-menu-title-box {
	width:52.86%;
	border-left:4px solid #fff;
	display:flex;
	align-items: center;
	padding-bottom:5px;
}

.body-section {
	padding:70px 0 40px;
}

.body-section-inner {
	max-width:1100px;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
}

.main-column {
	width:63%;
}

.side-column {
	width:30%;
	padding-top:5px;
}

.side-bnr img:hover {
	opacity:0.75;
}

.side-bnr a {
    display: block;
    margin-bottom: 15px;
}

.lead-text {
	font-size:24px;
	font-weight:bold;
	color:#2c6cb4;
	line-height:1.6;
	margin-bottom:30px;
	text-align: justify;
}

.body-text {
	font-size:21.5px;
	color:#4d4d4d;
	line-height:1.65;
	margin-bottom:14px;
	text-align: justify;
}

.illust {
	width:100%;
	margin:65px auto 50px;
}

.body-indent-wrap {
	margin:0 0 70px;
	padding-left:11%;
}

.body-indent-heading {
	font-size:24px;
	font-weight:bold;
	color:#2c6cb4;
	margin-bottom:5px;
}

.body-indent-list {
	font-size:21.5px;
	font-weight:bold;
	color:#4d4d4d;
	line-height:1.65;
}


@media screen and ( max-width:1300px) {
	.body-section {
		padding:60px 80px 40px;
	}
	.lead-text {
		font-size:23px;
	}
	.body-text {
		font-size:21px;
	}
	.body-indent-wrap {
		margin:0 0 65px;
		padding-left:8%;
	}
	.body-indent-heading {
		font-size:22px;
	}
	.body-indent-list {
		font-size:20.5px;
	}
}

@media screen and ( max-width:1180px) {
	.body-section {
		padding:50px 70px 30px;
	}
	.body-indent-wrap {
		margin:0 0 65px;
		padding-left:4%;
	}
}

@media screen and ( max-width:960px) {
	.body-section {
		padding:45px 50px 30px;
	}
	.lead-text {
		font-size:21px;
	}
	.body-text {
		font-size:19.5px;
	}
	.body-indent-wrap {
		margin:0 0 60px;
		padding-left:6%;
	}
	.body-indent-heading {
		font-size:20px;
	}
	.body-indent-list {
		font-size:19px;
	}
}

@media print, screen and (min-width:881px) {
	.link-bnr-small {
		display:none !important;
	}
}

@media screen and ( max-width:880px) {
	.body-section-inner {
		display:block;
	}
	.main-column {
		width:100%;
	}
	.side-column {
		width:100%;
		padding-top:0;
	}
	.lead-text {
		font-size:21.5px;
	}
	.body-text {
		font-size:20px;
	}
	.illust {
		max-width:590px;
		margin:45px auto 60px;
	}
	.body-indent-wrap {
		margin:0 0 60px;
		padding-left:12%;
	}
	.link-bnr-large {
		display:none !important;
	}
}

@media screen and ( max-width:700px) {
	.body-section {
		padding:30px 6% 30px;
	}
	.lead-text {
		font-size:19.5px;
	}
	.body-text {
		font-size:18.5px;
	}
	.illust {
		margin:30px auto 35px;
	}
	.body-indent-wrap {
		margin:0 0 40px;
		padding-left:5%;
	}
	.body-indent-heading {
		font-size:18.5px;
	}
	.body-indent-list {
		font-size:17.5px;
	}
}

@media screen and ( max-width:600px) {
	.body-section {
		padding:20px 5% 30px;
	}
	.lead-text {
		font-size:17px;
	}
	.body-text {
		font-size:17px;
	}
	.body-indent-wrap {
		margin:0 0 40px;
		padding-left:0%;
	}
	.body-indent-heading {
		font-size:16px;
	}
	.body-indent-list {
		font-size:16px;
	}
}

.foot-menu-section {
	padding:65px 0 30px;
}

.foot-menu-wrap {
	display:flex;
	border-right:1px solid #808080;
}

.foot-menu-box {
	width:33.3333%;
	border-left:1px solid #808080;
    text-align: center;
}

.foot-menu-box img {
    width:80%;
    max-width: 130px;
}

@media screen and ( max-width:960px) {
	.foot-menu-section {
		padding:45px 0 30px;
	}
}

@media screen and ( max-width:880px) {
	.foot-menu-section {
		padding:30px 0 60px;
	}
}

@media screen and ( max-width:700px) {
	.foot-menu-section {
		margin:0 -5%;
		padding:20px 0 40px;
	}
	.foot-menu-wrap {
		border-right:none;
	}
	.foot-menu-box:first-child {
		border-left:none;
	}
}