f06622@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP');
@import url('https://fonts.googleapis.com/css?family=Quicksand');
@import url('https://fonts.googleapis.com/css?family=Coming+Soon');
@import url('https://fonts.googleapis.com/css?family=Sedgwick+Ave');
@import url('https://fonts.googleapis.com/css?family=Roboto');

@font-face {
    font-family: 'quest';
    src: url(../lib/quest.woff) format("woff");
}

* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

/* ******************************************* */
/*          total
/* ******************************************* */
/* For modern browsers */
.clearfix::before,
.clearfix::after {
	content: "";
	display: block;
	overflow: hidden;
}
.clearfix::after {
	clear: both;
}

/* For IE 6/7 (trigger hasLayouta ) */
.clearfix {
	zoom: 1;
}

.clear {
	clear: both;
}

html {

}

.fitting {
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;';
}
.loading {
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	width: 100%;
    height: 100%;
	background: #fff;
	top: 0px; left: 0px;
	z-index: 10000;
}
/* ******************************************* */
/*          font
/* ******************************************* */
.hiragino {
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}
.meiryo {
	font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
}
.mincho {
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

body {
	font-family: "Noto Sans JP", 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: #303231;
	background: #f6fcff;
    word-wrap: break-word;
	overflow-y: scroll;
}

body.type001 {

}

/* ******************************************* */
/*          container wrapper section etc
/* ******************************************* */
#container {
    min-width: 1100px;
	min-height: 100vh;
	margin: 0 auto;
    overflow: hidden;
}
/* wrapper */
.wrapper {
	width: 1100px;
	margin: 0px auto;
}
.lower_wrapper {
	width: 980px;
	margin: 0px auto;
}
.pc { display: block; }
.sp { display: none; }
.bigger_link, .trigger, .click { cursor: pointer; }

.t_left { text-align: left !important; }
.t_center { text-align: center !important; }
.t_right { text-align: right !important; }
.margin_2020 { margin: 20px auto !important; }
.margin_2040 { margin: 20px auto 40px !important; }
.margin_2060 { margin: 20px auto 60px !important; }
.margin_2080 { margin: 20px auto 80px !important; }
.margin_4040 { margin: 40px auto !important; }
.margin_4060 { margin: 40px auto 60px !important; }
.margin_4080 { margin: 40px auto 80px !important; }
.margin_6060 { margin: 60px auto !important; }
.margin_6080 { margin: 60px auto 80px !important; }
.margin_8080 { margin: 80px auto !important; }

main > section {
	padding: 60px 0 20px;
	box-shadow: 0 3px 5px rgba( 0, 0, 0, 0.4 ) inset;
}
main > section.pattern1 {
	background: #3a3a9e;
	color: #fff;
}
main > section.pattern2 {
	background: #3a3a9e;
	background-image: url('/images/bg_texture02.png');
	background-size: cover;
	background-position: 50%;
}
main > section.pattern3 {
	background: #3a3a9e;
	background-image: url('/images/bg_texture03.png');
	background-size: cover;
	background-position: 50%;
}
main > section section {
	padding: 0px;
	margin: 0px auto 60px;
}

@media(min-width: 737px){
    .left { float: left; }
    .right { float: right; }
	.c1 { width:  5.33%; margin: 0 auto; }
	.c2 { width: 13.67%; margin: 0 auto; }
	.c3 { width: 22.00%; margin: 0 auto; }
	.c4 { width: 30.33%; margin: 0 auto; }
	.c5 { width: 38.67%; margin: 0 auto; }
	.c6 { width: 47.00%; margin: 0 auto; }
	.c7 { width: 55.33%; margin: 0 auto; }
	.c8 { width: 63.67%; margin: 0 auto; }
	.c9 { width: 72.00%; margin: 0 auto; }
	.c10 { width: 80.33%; margin: 0 auto; }
	.c11 { width: 88.67%; margin: 0 auto; }

	section.p10 { padding-left: 10px; padding-right: 10px; }
	section.p15 { padding-left: 15px; padding-right: 15px; }
	section.p20 { padding-left: 20px; padding-right: 20px; }
	section.p25 { padding-left: 25px; padding-right: 25px; }
}
@media(max-width: 736px){
	body {
        font-size: 16px;
        line-height: 1.4;
        -webkit-text-size-adjust: 100%;
	}
	#container {
		min-width: 100%;
	}
	.wrapper {
		width: 100%;
		padding: 0 3.5vw;
	}
	.lower_wrapper {
		width: 100%;
		padding: 1px 3.5%;
        background: #FFFFFF;
    }
    .white_wrapper {
        margin: 4vw auto;
        background: #FFFFFF;
        padding: 3vw;
    }
    .sp{
		display: block;
	}
	.pc{
		display: none;
	}
	img {
		max-width: 100%;
	}
	input {
		max-width: 100%;
		border-radius: 0px;
	}
	iframe {
		max-width: 100%;
    }
	br.sp-br{
		display: block;
	}

	main > section {
		padding: 40px 0 20px;
	}
	main > section section {
		padding: 0px;
		margin: 0px auto 40px;
	}

    .margin_2020 { margin: 2vw auto !important; }
    .margin_2040 { margin: 2vw auto 4vw !important; }
    .margin_2060 { margin: 2vw auto 5vw !important; }
    .margin_2080 { margin: 2vw auto 6.5vw !important; }
    .margin_4040 { margin: 4vw auto !important; }
    .margin_4060 { margin: 4vw auto 5vw !important; }
    .margin_4080 { margin: 4vw auto 6.5vw !important; }
    .margin_6060 { margin: 5vw auto !important; }
    .margin_6080 { margin: 5vw auto 6.5vw !important; }
    .margin_8080 { margin: 6.5vw auto !important; }
}

.photoimage {
	padding: 8px 10px;
	box-shadow: rgba(0, 0, 0, 0.35) 4px 3px 11px;
	background: #fff;
	margin-bottom: 20px;
}
.photoimage.l05 { transform: rotate( -0.5deg ); }
.photoimage.l10 { transform: rotate( -1.0deg ); }
.photoimage.l15 { transform: rotate( -1.5deg ); }
.photoimage.r05 { transform: rotate(  0.5deg ); }
.photoimage.r10 { transform: rotate(  1.0deg ); }
.photoimage.r15 { transform: rotate(  1.5deg ); }
.price p { font-size: 120%; color: #d52f2f; font-weight: bold; }
.price p:nth-of-type(n+2) { font-size: 75%; color: #d52f2f; font-weight: normal; }
/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          a link setting
/* ******************************************* */
a {
	color: #303030;
	text-decoration: none;
	cursor: pointer;
    outline: none;
}
a:hover, a:focus, a:active {
	color: #303030;
	text-decoration: none;
}
a img {
	border: 0;
}
img {
    max-width: 100%;
}
a[href^="tel:"] { cursor: default; }

a.arrows {
	position: relative;
	transition: 0.2s;
	padding-right: 50px;
	text-align: center;
}
a.arrows::after {
	position: absolute;
	content: "➡";
	color: #f06622;
	background: #fff;
	border-radius: 100px;
	font-size: 15px;
	line-height: 19px;
	width: 20px;
	height: 20px;
	right: 20px;
	top: 50%;
	margin-top: -10px;
	transition: 0.2s;
}
a.arrows:hover::after {
	content: "➡";
	color: #fff;
	background: #f06622;
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          header PC
/* ******************************************* */
@media(min-width:737px){
	#header {
        background: rgba(242, 251, 255, 0.8);
        position: fixed;
        z-index: 9999;
        box-shadow: 0px 2px 2px 2px rgba( 0, 0, 0, 0.1 );
		width: 100%;
		top: 0;
    }
        #header h1 {
            float: right;
            text-align: right;
            font-size: 12px;
            line-height: 18px;
			margin: 8px 0px 2px;
            width: 600px;
            color: #303030;
        }
    .header_info {
        float: left;
    }
        .header_info .logo {
            margin: 10px 0px 20px;
            text-align: left;
        }
    .header_sns {
        float: right;
        width: 500px;
        text-align: right;
        margin: 6px auto;
        vertical-align: middle;
    }
        .header_sns .icon {
            display: inline-block;
            width: 30px;
            height: 30px;
        }
        .header_sns .icon a:hover {
            opacity: 0.75;
        }
}
/* ******************************************* */
/*          header SP
/* ******************************************* */
@media(max-width:736px){
    #header {
        position: fixed;
        z-index: 9999;
		background: rgba( 255, 255, 255, 0.8 );
        box-shadow: 0px 2px 2px 2px rgba( 0, 0, 0, 0.1 );
		width: 100%;
		top: 0;
    }
        .header_info {
            box-shadow: 0px 2px 2px 2px rgba( 0, 0, 0, 0.1 );
        }
        .header_info .logo {
            float: left;
            margin: 2vw;
            width: 168px;
            height: 60px;
        }
        .header_info .logo img {
            max-width: 100%;
            height: auto;
        }
        .header_info .menu {
            float: right;
            margin: 2vw;
            background: url('/images/menu.png') 0 0 no-repeat;
            background-size: 100% 100%;
            transition: 0.3s;
            width: 60px;
            height: 60px;
        }
        .header_info .open .menu {
            background: url('/images/close.png') 0 0 no-repeat;
            background-size: 100% 100%;
        }
        .header_sns {
            float: right;
            margin: 2vw 0vw;
            vertical-align: middle;
            font-size: 0px;
        }
            .header_sns .twitter {
                display: inline-block;
                margin: 15px 0vw;
                width: 30px;
                height: 30px;
            }
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          gnav PC
/* ******************************************* */
@media(min-width:737px){
    #gnav {
        float: right;
    }
        #gnav ul {
            font-size: 0px;
            margin: 12px 0px 10px;
            text-align: right;
        }
        #gnav ul li {
            display: inline-block;
            border-left: 1px solid #3a3a9e;
        }
        #gnav ul li:last-of-type {
            border-right: 1px solid #3a3a9e;
        }
        #gnav ul li a {
            display: inline-block;
            color: #333333;
            font-size: 17px;
			font-weight: bold;
            line-height: 1.0;
            padding: 8px 20px;
            text-decoration: none;
			transition: 0.2s;
        }
        #gnav ul li a:hover {
            background: #3a3a9e;
            color: #FFFFFF;
        }
}
/* ******************************************* */
/*          gnav SP
/* ******************************************* */
@media(max-width:736px){
    #rwd_menu {
        background: #3a3a9e;
		color: #fff;
        width: 100%;
    }
        #rwd_menu ul {
            width: 100%;
        }
        #rwd_menu ul li {
            border-bottom: 1px solid rgba( 0, 0, 0, 0.3 );
        }
        #rwd_menu ul li a {
            display: block;
            font-size: 15px;
			color: #fff;
            line-height: 2.5;
            text-align: center;
            text-decoration: none;
        }
        #rwd_menu ul li a::after {
            content: "　≫";
        }

}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          汎用 PC
/* ******************************************* */
.type001 section h2 {
	position: relative;
	text-align: center;
	margin: 0 auto 30px;
	border-bottom: 1px solid rgba( 0, 0, 0, 0.4 );
	padding-bottom: 8px;
	font-size: 24px;
	line-height: 28px;
}
.type001 section h2 span {
	display: block;
	margin: 5px auto 0px;
	font-size: 15px;
	opacity: 0.7;
	font-family: 'Sedgwick Ave';
}
.type001 section h3 {
	font-size: 1.25em;
	font-weight: 600;
	margin: 0 auto 20px;
	color: #3a3a9e;
}
.type001 section.pattern1 h2 {
	color: #fff;
	border-bottom: 1px solid rgba( 255, 255, 255, 0.4 );
}
.type001 section.pattern1 h3 {
	color: #fff;
}
.type001 .title {
	font-weight: 600;
	background: #3a3a9e;
	color: #fff;
	padding: 8px 12px;
	margin-bottom: 15px;
}
.type001 .pattern1 .title {
	background: #fffaf6;
	color: #3a3a9e;
}
@media(min-width:737px){
	.backbutton,
	.linkbutton {
		margin: 30px auto;
		text-align: center;
	}
		.backbutton a,
		.linkbutton a {
			display: inline-block;
			position: relative;
			padding: 10px 50px 10px;
			border: double 5px #f06622;
			background: #f06622;
			color: #fff;
			font-weight: bold;
			transition: 0.2s;
			border-radius: 5px;
		}
		.linkbutton a::after {
			content: "▶";
			font-size: 80%;
			position: absolute;
			right: 10px;
			top: 50%;
			line-height: 20px;
			margin-top: -10px;
		}
		.linkbutton a:hover {
			background: #fff;
			color: #f06622;
		}
		.backbutton a {
			border: double 5px #989898;
			background: #989898;
		}
		.backbutton a::after {
			content: "◀";
			font-size: 80%;
			position: absolute;
			left: 10px;
			top: 50%;
			line-height: 20px;
			margin-top: -10px;
		}
		.backbutton a:hover {
			background: #fff;
			color: #989898;
		}
	.anchorlink {
		margin: 30px auto;
		text-align: center;
	}
		.anchorlink a {
			display: inline-block;
			position: relative;
			padding: 10px 10px 20px;
			background: #f06622;
			border: solid 2px #f06622;
			margin: 10px;
			color: #fff;
			font-weight: bold;
			transition: 0.2s;
			width: 240px;
			border-radius: 50px;
		}
		.anchorlink a::after {
			content: "▼";
			color: #fff;
			font-size: 80%;
			position: absolute;
			left: 50%;
			bottom: 5px;
			width: 20px;
			line-height: 16px;
			transition: 0.2s;
			margin-left: -10px;
		}
		.anchorlink a:hover {
			color: #f06622;
			background: #fff;
		}
		.anchorlink a:hover::after {
			color: #f06622;
		}
	.imagebox {
		margin: 0 auto 20px;
	}
	.text {
		font-weight: 400;
		line-height: 1.4;
		margin-bottom: 30px;
	}
	.text p { margin-bottom: 1.0em;	}
	.text p:last-of-type { margin-bottom: 0px; }

	ul.col_3, ul.col_4, ul.col_5 {
		margin: 0 auto 40px;
	}
	ul.col_3 li {
		width: 30%;
		float: left;
		margin-left: 5%;
	}
	ul.col_4 li {
		width: 22%;
		float: left;
		margin-left: 4%;
	}
	ul.col_5 li {
		width: 17.2%;
		float: left;
		margin-left: 3.5%;
	}
	ul.col_3 li:nth-of-type(3n+1) { margin-left: 0px; }
	ul.col_4 li:nth-of-type(4n+1) { margin-left: 0px; }
	ul.col_5 li:nth-of-type(5n+1) { margin-left: 0px; }
	ul.col_3 li:nth-of-type(n+4) { margin-top: 20px; }
	ul.col_4 li:nth-of-type(n+5) { margin-top: 20px; }
	ul.col_5 li:nth-of-type(n+6) { margin-top: 20px; }

	table.common_table {
		width: 100%;
	}
		table.common_table tr {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin: 4px auto;
			border-bottom: 1px solid rgba( 0, 0, 0, 0.4 );
		}
		table.common_table th {
			display: block;
			color: #3a3a9e;
			font-weight: 600;
			padding: 16px;
			text-align: center;
			width: 25%;
		}
		table.common_table td {
			display: block;
			padding: 16px;
			width: 75%;
		}
		.pattern1 table.common_table tr {
			border-bottom: 1px solid rgba( 255, 255, 255, 0.4 );
		}
		.pattern1 table.common_table th {
			color: #fff;
		}
	ul.four_display {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		position: relative;
		width: 400px;
		height: 400px;
		margin: 0 auto;
	}
		ul.four_display::before {
			content: "";
			position: absolute;
			width: 70%;
			height: 70%;
			top: calc( 15% - 30px );
			left: calc( 15% - 30px );
			border: 30px double #9090c6;
			border-radius: 2000px;
		}
		ul.four_display li {
			position: relative;
			width: 190px;
			height: 190px;
			display: flex;
			justify-content: center;
			align-items: center;
			flex-wrap: wrap;
			padding: 5%;
			background: #3a3a9e;
			border-radius: 500px;
			color: #fff;
			font-size: 20px;
			font-weight: bold;
			line-height: 1.1;
		}
		.pattern1 ul.four_display li {
			background: #fff;
			color: #3a3a9e;
		}
		ul.four_display li:nth-of-type(n+3) { margin-top: 20px; }
		ul.four_display li .icon { font-size: 100px; margin: 0px 10% -20px; }
	.center_arrow { position: relative; }
	.center_arrow::before {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 50px 0 50px 30px;
		border-color: transparent transparent transparent #9090c6;
		position: absolute;
		top: 50%; left: 50%;
		margin-top: -50px; margin-left: -15px;
	}
	ul.checklist {
		width: 60%;
		margin: 20px auto;
		text-align: left;
		font-size: 20px;
		font-weight: bold;
	}
		ul.checklist ion-icon {
			position: relative;
			top: 0.2em;
			color: #99322c;
			margin-right: 0.5em;
		}
		.pattern1 ul.checklist ion-icon { color: #ff9494; }
}
/* ******************************************* */
/*          汎用 SP
/* ******************************************* */
@media(max-width:736px){
	.type001 section h2 {
		margin: 0 auto 20px;
		font-size: 22px;
		line-height: 28px;
	}
	.type001 section h3 {
		margin: 0 auto 15px;
	}
	.type001 .title {
		padding: 8px;
		margin-bottom: 10px;
	}
	.backbutton,
	.linkbutton {
		margin: 20px auto;
	}
		.backbutton a,
		.linkbutton a {
			display: block;
			width: 70%;
			max-width: 200px;
			position: relative;
			margin: 0px auto 20px;
			padding: 10px;
			border: double 5px #f06622;
			background: #f06622;
			color: #fff;
			font-weight: bold;
			transition: 0.2s;
			border-radius: 5px;
			text-align: center;
		}
		.linkbutton a::after {
			content: "▶";
			font-size: 80%;
			position: absolute;
			right: 10px;
			top: 50%;
			line-height: 20px;
			margin-top: -10px;
		}
		.backbutton a {
			border: double 5px #989898;
			background: #989898;
		}
		.backbutton a::after {
			content: "◀";
			font-size: 80%;
			position: absolute;
			left: 10px;
			top: 50%;
			line-height: 20px;
			margin-top: -10px;
		}
	.anchorlink {
		margin: 20px auto;
		text-align: center;
	}
		.anchorlink a {
			display: inline-block;
			position: relative;
			padding: 10px 10px 20px;
			background: #f06622;
			border: solid 2px #f06622;
			margin: 10px;
			color: #fff;
			font-weight: bold;
			transition: 0.2s;
			width: 40%;
			max-width: 240px;
			border-radius: 50px;
		}
		.anchorlink a::after {
			content: "▼";
			color: #fff;
			font-size: 80%;
			position: absolute;
			left: 50%;
			bottom: 5px;
			width: 20px;
			line-height: 16px;
			transition: 0.2s;
			margin-left: -10px;
		}
	.imagebox {
		max-width: 80%;
		margin: 0 auto 10px;
	}
	.text {
		font-weight: 400;
		line-height: 1.4;
		margin-bottom: 20px;
	}
	.text p { margin-bottom: 1.0em;	}
	.text p:last-of-type { margin-bottom: 0px; }

	ul.col_3, ul.col_4, ul.col_5 {
		margin: 0 auto 20px;
	}
	ul.col_3 li {
		margin: 20px auto;
		padding: 0px 15px;
		width: 100%;
	}
	ul.col_4 li,
	ul.col_5 li {
		width: 48%;
		float: left;
		margin-left: 4%;
	}
	ul.col_4 li:nth-of-type(2n+1) { margin-left: 0px; }
	ul.col_5 li:nth-of-type(2n+1) { margin-left: 0px; }
	ul.col_4 li:nth-of-type(n+3) { margin-top: 20px; }
	ul.col_5 li:nth-of-type(n+3) { margin-top: 20px; }

	table.common_table {
		width: 100%;
	}
		table.common_table tr {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin: 4px auto;
			border-bottom: 1px solid rgba( 0, 0, 0, 0.4 );
		}
		table.common_table th {
			display: block;
			color: #3a3a9e;
			font-weight: 600;
			padding: 16px;
			text-align: center;
			width: 25%;
		}
		table.common_table td {
			display: block;
			padding: 16px;
			width: 75%;
		}
		.pattern1 table.common_table tr {
			border-bottom: 1px solid rgba( 255, 255, 255, 0.4 );
		}
		.pattern1 table.common_table th {
			color: #fff;
		}
}

/* -------------------------------------------------------------------------------------------------- */


/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          トップページ PC
/* ******************************************* */
@media(min-width:737px){
    #mainV {
		position: relative;
		left: 50%;
		width: 1920px;
		margin-left: -960px;
		height: 100vh;
		overflow: hidden;
    }
	main { position: relative; }
	main a.scroll {
		display: block;
		position: absolute;
		border: 1px solid #fff;
		border-radius: 100px;
		padding: 12px 0px;
		color: #fff;
		text-align: center;
		font-size: 18px;
		line-height: 2.0;
		width: 150px;
		top: -140px;
		left: 50%;
		margin-left: -75px;
		box-shadow: rgba( 0, 0, 0, 0.1 ) 0 0 10px,
		 			rgba( 0, 0, 0, 0.1 ) 0 0 10px,
					rgba( 0, 0, 0, 0.1 ) 0 0 10px,
					rgba( 0, 0, 0, 0.1 ) 0 0 10px;
		text-shadow: rgba( 0, 0, 0, 0.3 ) 0 0 8px,
					 rgba( 0, 0, 0, 0.3 ) 0 0 8px,
					 rgba( 0, 0, 0, 0.3 ) 0 0 8px,
					 rgba( 0, 0, 0, 0.1 ) 0 0 8px;
	}
	.top_slider li { position: relative; }
	.top_slider li .maintext, .top_slider li .comment { position: absolute; }
	.top_slider li .maintext {
		width: 1000px;
		font-size: 45px;
		font-weight: 600;
		text-shadow: #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px;
	}
	.top_slider li .comment {
		width: 700px;
		font-size: 28px;
		text-shadow: #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px;
	}
	.top_slider li:nth-of-type(1) .maintext {
		top: 400px;
		left: 50%;
		margin-left: -530px;
		text-align: left;
	}
	.top_slider li:nth-of-type(1) .comment {
		top: 480px;
		left: 50%;
		margin-left: -530px;
		text-align: left;
	}
	.top_slider li:nth-of-type(2) .maintext {
		top: 320px;
		right: 50%;
		margin-right: -530px;
		text-align: right;
	}
	.top_slider li:nth-of-type(2) .comment {
		top: 400px;
		right: 50%;
		margin-right: -530px;
		text-align: right;
	}
	.top_slider li:nth-of-type(3) .maintext {
		top: 350px;
		left: 50%;
		margin-left: -530px;
		text-align: left;
	}
	.top_slider li:nth-of-type(3) .comment {
		top: 430px;
		left: 50%;
		margin-left: -530px;
		text-align: left;
	}
        #mainV a:hover {
            opacity: 0.6;
        }
    /******** TOPICS ********/
    .top_topics {
        float: left;
        width: 500px;
        min-height: 350px;
        background: url('/images/bg_paper2.png');
        background-size: 100% 100%;
        transform: rotate( 1.2deg );
        margin: 18px 25px 60px;
        box-shadow: 3px 3px 5px rgba( 0, 0, 0, 0.3 );
        color: #394D6F;
    }
    .top_topics .inner {
        padding: 40px 50px;
    }
    .top_topics h2 {
        font-size: 24px;
        line-height: 1.5em;
        text-align: center;
        margin-bottom: 0.5em;
    }
    .top_topics p {
        font-size: 14px;
        line-height: 1.5;
        text-align: left;
        text-indent: -6.5em;
        padding-left: 6.5em;
    }
    .top_banner {
        float: right;
        width: 500px;
        margin: 0px 25px;
    }
}
/* ******************************************* */
/*          トップページ SP
/* ******************************************* */
@media(max-width:736px){
    #mainV {
		margin: 0 -10vw;
    }
	main { position: relative; }
	main a.scroll {
		display: none;
	}
	.top_slider li { position: relative; }
	.top_slider li .maintext, .top_slider li .comment { position: absolute; }
	.top_slider li .maintext {
		width: 90vw;
		font-size: 5vw;
		font-weight: 600;
		text-shadow: #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px,#fff 0 0 8px, #fff 0 0 8px;
	}
	.top_slider li .comment {
		width: 90vw;
		font-size: 3vw;
		line-height: 1.8;
		text-shadow: #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px, #fff 0 0 8px,#fff 0 0 8px, #fff 0 0 8px;
	}
	.top_slider li:nth-of-type(1) .maintext {
		top: 25vw;
		left: 50%;
		margin-left: -45vw;
		text-align: left;
	}
	.top_slider li:nth-of-type(1) .comment {
		top: 40vw;
		left: 50%;
		margin-left: -45vw;
		text-align: left;
	}
	.top_slider li:nth-of-type(2) .maintext {
		top: 20vw;
		left: 50%;
		margin-left: -45vw;
		text-align: left;
	}
	.top_slider li:nth-of-type(2) .comment {
		top: 35vw;
		left: 50%;
		margin-left: -45vw;
		text-align: left;
	}
	/******** TOPICS ********/
    .top_topics {
        width: 95%;
        min-height: 30vw;
        background: url('/images/bg_paper2.png');
        background-size: 100% 100%;
        margin: 4vw auto 6vw;
        box-shadow: 3px 3px 5px rgba( 0, 0, 0, 0.3 );
        color: #394D6F;
    }
    .top_topics .inner {
        padding: 5vw 5vw 8vw;
    }
    .top_topics h2 {
        font-size: 18px;
        line-height: 1.5em;
        text-align: center;
        margin-bottom: 0.5em;
    }
    .top_topics p {
        font-size: 12px;
        line-height: 20px;
        text-align: left;
        padding-left: 6.5em;
        text-indent: -6.5em;
    }
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          下層ページ PC
/* ******************************************* */
@media(min-width:737px){
	#lowV {
		padding: 10px 0px 10px;
		min-height: 600px;
		position: relative;
	}
		#lowV .alphabet {
			font-size: 50px;
			font-weight: bold;
			color: #222;
			font-family: 'Roboto';
			text-shadow: #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 8px, #fff 0 0 8px;
			margin: 250px 0 10px 6px;
		}
		#lowV .maintitle {
			font-size: 30px;
			font-weight: bold;
			color: #777;
			text-shadow: #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px;
			margin: 10px 0 20px 5px;
		}
		.bg01 {
			background: url('/images/bg01.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg02 {
			background: url('/images/bg02.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg03 {
			background: url('/images/bg03.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg04 {
			background: url('/images/bg04.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg05 {
			background: url('/images/bg05.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
}
/* ******************************************* */
/*          下層ページ SP
/* ******************************************* */
@media(max-width:736px){
    /************* 共通バナー **************/
	#lowV {
		padding: 10px 0px 10px;
		height: 250px;
		position: relative;
	}
		#lowV .alphabet {
			font-size: 30px;
			font-weight: bold;
			color: #222;
			font-family: 'Roboto';
			text-shadow: #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 8px, #fff 0 0 8px;
			margin: 100px 0 5px 6px;
		}
		#lowV .maintitle {
			font-size: 20px;
			font-weight: bold;
			color: #777;
			text-shadow: #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px, #fff 0 0 15px;
			margin: 5px 0 20px 5px;
		}
		.bg01 {
			background: url('/images/bg01.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg02 {
			background: url('/images/bg02.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg03 {
			background: url('/images/bg03.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg04 {
			background: url('/images/bg04.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
		.bg05 {
			background: url('/images/bg05.jpg') no-repeat;
			background-size: cover;
			background-position: 50%;
		}
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          Article PC
/* ******************************************* */
@media(min-width:737px){
    /************ アーティクル *************/
	.at_news {
		margin: 40px auto 60px;
	}
		.at_news ul { width: 800px; margin: 0 auto; }
		.at_news ul li {
			display: flex;
			padding: 20px 50px;
			border-top: 1px solid #ccc;
		}
		.at_news ul li:last-of-type { border-bottom: 1px solid #ccc; }
		.at_news ul li .date {
			opacity: 0.6;
			margin-right: 30px;
		}
		.at_news ul li .newstitle a:hover {
			text-decoration: underline;
		}
		.pagedate {
			text-align: right;
			opacity: 0.6;
		}
}
/* ******************************************* */
/*          Article SP
/* ******************************************* */
@media(max-width:736px){
    /************ アーティクル *************/
	.at_news {
		margin: 20px auto 40px;
	}
		.at_news ul { }
		.at_news ul li {
			padding: 10px 20px;
			border-top: 1px solid #ccc;
		}
		.at_news ul li:last-of-type { border-bottom: 1px solid #ccc; }
		.at_news ul li .date {
			opacity: 0.6;
			margin: 10px auto;
		}
		.at_news ul li .newstitle {
			margin: 10px auto;
		}
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          sitemap PC
/* ******************************************* */
@media(min-width:737px){
    /************ sitemap *************/
	ul.sitemap {
		margin: 0 auto 80px;
		width: 60%;
	}
		ul.sitemap li {
			padding: 20px;
		}
		ul.sitemap li a {
			transition: 0.3s;
		}
		ul.sitemap li a:hover {
			text-decoration: underline;
			transition: 0.1s;
		}
		ul.sitemap li a::before {
			display: inline-block;
			transition: 0.3s;
			content: "";
			border-right: 3px solid #3a3a9e;
			border-top: 3px solid #3a3a9e;
			margin-right: 20px;
			width: 10px;
			height: 10px;
			transform: rotate( 45deg );
		}
}
/* ******************************************* */
/*          SP
/* ******************************************* */
@media(max-width:736px){
	/************ sitemap *************/
	ul.sitemap {
		margin: 0 auto 40px;
		width: 80%;
	}
		ul.sitemap li {
			padding: 10px;
		}
		ul.sitemap li a {
			transition: 0.3s;
		}
		ul.sitemap li a::before {
			display: inline-block;
			transition: 0.3s;
			content: "";
			border-right: 3px solid #3a3a9e;
			border-top: 3px solid #3a3a9e;
			margin-right: 20px;
			width: 10px;
			height: 10px;
			transform: rotate( 45deg );
		}
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          Footer PC
/* ******************************************* */
@media(min-width:737px){
	#footer {
		background: #3a3a9e;
		padding: 40px 0px 0px;
	}
	.footer_top {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 40px;
		padding: 0 80px;
	}
		.footer_top .logo,
		.footer_top .contact {
			width: 350px;
		}
		.footer_top .contact a {
			display: block;
			font-size: 130%;
			background: #f06622;
			color: #fff;
			padding: 20px;
			text-align: center;
			border-radius: 5px;
			border: 3px double #f06622;
			transition: 0.2s;
		}
		.footer_top .contact a:hover {
			background: #fff;
			color: #f06622;
		}
	#fnav {
		color: #fff;
	}
		#fnav ul {
			text-align: center;
			margin: 20px auto;
		}
		#fnav ul li {
			display: inline-block;
			padding: 0 20px;
		}
		#fnav ul li:nth-of-type(n+2) {
			border-left: 1px solid #fff;
		}
		#fnav ul li a {
			color: #fff;
			text-decoration: none;
		}
		#fnav ul li a:hover {
			text-decoration: underline;
		}
    .copyright {
        font-size: 12px;
        line-height: 30px;
        text-align: center;
		color: #fff;
    }
    /************ pagetop *************/
    #pagetop {
        position: fixed;
        bottom: 65px;
        left: 50%;
        width: 64px;
        height: 64px;
        margin-left: 530px;
        z-index: 1000;
    }
		#pagetop a {
			display: block;
			text-align: center;
			width: 64px;
			height: 64px;
			background: #3a3a9e;
			color: #fff;
			font-size: 30px;
			line-height: 30px;
			border-radius: 100px;
			padding-top: 8px;
			border: 2px solid #fff;
		}
		#pagetop a span {
			font-size: 10px;
			line-height: 10px;
			font-weight: 600;
			display: block;
		}
		#pagetop a:hover {
			border: 2px solid #3a3a9e;
			background: #fff;
			color: #3a3a9e;
		}
		#pagetop a:hover span {
			color: #3a3a9e;
		}
}
/* ******************************************* */
/*          Footer SP
/* ******************************************* */
@media(max-width:736px){
	#footer {
		background: #3a3a9e;
		padding: 20px 0px 0px;
	}
	.footer_top {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 20px;
		padding: 0px 5% 10px;
	}
		.footer_top .logo,
		.footer_top .contact {
			width: 45%;
		}
		.footer_top .contact a {
			display: block;
			font-size: 90%;
			background: #f06622;
			color: #fff;
			padding: 10px 5px;
			text-align: center;
			border-radius: 5px;
			border: 3px double #f06622;
			transition: 0.2s;
		}
		.footer_top .contact a:hover {
			background: #fff;
			color: #f06622;
		}
	#fnav {
		color: #fff;
	}
		#fnav ul {
			text-align: center;
			margin: 0px auto;
		}
		#fnav ul li {
			font-size: 90%;
			display: block;
			padding: 10px 0px;
		}
		#fnav ul li a {
			color: #fff;
			text-decoration: none;
		}
    .copyright {
        font-size: 10px;
        line-height: 30px;
        text-align: center;
		color: #fff;
    }
    /************ pagetop *************/
    #pagetop {
        position: fixed;
        bottom: 10px;
        right: 10px;
        width: 64px;
        height: 64px;
        z-index: 1000;
        opacity: 0.7;
    }
		#pagetop a {
			display: block;
			text-align: center;
			width: 64px;
			height: 64px;
			background: #3a3a9e;
			color: #fff;
			font-size: 30px;
			line-height: 30px;
			border-radius: 100px;
			padding-top: 8px;
		}
		#pagetop a span {
			font-size: 10px;
			line-height: 10px;
			font-weight: 600;
			display: block;
		}
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          汎用パーツ PC
/* ******************************************* */
@media(min-width:737px){
	.mailcheck,
	.mailform {
		margin: 0 auto 60px;
		text-align: center;
	}
	.mailend {
		margin: 0 auto 100px;
		text-align: center;
	}
	.mailcheck .confirmation,
	.mailend .confirmation {
		line-height: 1.6;
	}
	.mailform table {
		width: 800px;
		margin: 40px auto;
	}
	.mailform table tr {
		display: block;
	}
	.mailform table th {
		margin: 20px 0px 8px;
		display: block;
	}
	.mailform table td {
		margin: 8px 0px 40px;
		display: block;
	}

	.mailcheck table {
		width: 800px;
		margin: 40px auto;
	}
	.mailcheck table th {
		padding: 20px 15px;
		text-align: center;
		font-weight: bold;
		width: 25%;
	}
	.mailcheck table td {
		padding: 20px 15px;
		text-align: left;
		width: 75%;
	}
	.mailform input[type="text"] {
		width: 800px;
		margin: 8px auto 8px;
		border-radius: 10px;
		padding: 12px;
		border: 1px solid #666;
	}
	.mailform label[type="radio"] {
		display: block;
		margin: 16px auto;
		padding-left: 10px;
	}
	.mailform label[type="check"] {
		display: block;
		margin: 16px auto;
		text-align: center;
	}
	.mailform textarea {
		width: 800px;
		height: 200px;
		margin: 8px auto 8px;
		border-radius: 10px;
		padding: 12px;
		border: 1px solid #666;
	}
	.mailcheck input[type="submit"],
	.mailform input[type="submit"] {
		width: 400px;
		margin: 8px auto 8px;
		border-radius: 5px;
		padding: 12px;
		border: 5px double #f06622;
		background: #f06622;
		cursor: pointer;
		color: #fff;
		font-weight: 600;
		transition: 0.2s;
		font-family: "Noto Sans Japanese", 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	}
	.mailcheck input[type="submit"] {
		margin-right: 20px;
	}
	.mailcheck input[type="submit"]:hover,
	.mailform input[type="submit"]:hover {
		background: #fff;
		color: #f06622;
	}
	.mailcheck input[type="button"][value="戻る"] {
		width: 400px;
		margin: 8px auto 8px;
		border-radius: 5px;
		padding: 12px;
		border: 5px double #999;
		background: #999;
		cursor: pointer;
		color: #fff;
		font-weight: 600;
		transition: 0.2s;
		font-family: "Noto Sans Japanese", 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	}
	.mailcheck input[type="button"][value="戻る"]:hover {
		background: #fff;
		color: #999;
	}
	.needs, .err { color: #df4e45; }
	.rule {
		margin: 20px auto;
		border: 1px solid #999;
		background: #fff;
		padding: 10px 16px;
		height: 180px;
		overflow-y: scroll;
	}
}
/* ******************************************* */
/*          汎用パーツ SP
/* ******************************************* */
@media(max-width:736px){
	.mailcheck,
	.mailform {
		margin: 0 auto;
		text-align: center;
	}
	.mailend {
		margin: 0 auto 50px;
		text-align: center;
	}
	.mailcheck .confirmation,
	.mailend .confirmation {
		line-height: 1.6;
	}
	.mailform table {
		width: 100%;
		margin: 40px auto;
	}
	.mailform table tr {
		display: block;
	}
	.mailform table th {
		margin: 10px 0px 8px;
		display: block;
	}
	.mailform table td {
		margin: 8px 0px 20px;
		display: block;
	}

	.mailcheck table {
		width: 100%;
		margin: 20px auto;
	}
	.mailcheck table th {
		padding: 20px 15px;
		text-align: center;
		font-weight: bold;
		width: 25%;
	}
	.mailcheck table td {
		padding: 20px 15px;
		text-align: left;
		width: 75%;
	}
	.mailform input[type="text"] {
		width: 100%;
		margin: 8px auto 8px;
		border-radius: 10px;
		padding: 12px;
		border: 1px solid #666;
	}
	.mailform label[type="radio"] {
		display: block;
		margin: 16px auto;
		padding-left: 10px;
	}
	.mailform label[type="check"] {
		display: block;
		margin: 16px auto;
		text-align: center;
	}
	.mailform textarea {
		width: 100%;
		height: 150px;
		margin: 8px auto 8px;
		border-radius: 10px;
		padding: 12px;
		border: 1px solid #666;
	}
	.mailcheck input[type="submit"],
	.mailform input[type="submit"] {
		width: 90%;
		margin: 8px auto 8px;
		border-radius: 5px;
		padding: 8px;
		border: 5px double #f06622;
		background: #f06622;
		cursor: pointer;
		color: #fff;
		font-weight: 600;
		transition: 0.2s;
		font-family: "Noto Sans Japanese", 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	}
	.mailcheck input[type="submit"] {
		margin-right: 10px;
	}
	.mailcheck input[type="button"][value="戻る"] {
		width: 90%;
		margin: 8px auto 8px;
		border-radius: 5px;
		padding: 12px;
		border: 5px double #999;
		background: #999;
		cursor: pointer;
		color: #fff;
		font-weight: 600;
		transition: 0.2s;
		font-family: "Noto Sans Japanese", 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	}
	.mailcheck input[type="button"][value="戻る"]:hover {
		background: #fff;
		color: #999;
	}
	.needs, .err { color: #df4e45; }
	.rule {
		margin: 20px auto;
		border: 1px solid #999;
		background: #fff;
		padding: 10px;
		height: 140px;
		font-size: 12px;
		overflow-y: scroll;
	}
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          Breadcrumb PC
/* ******************************************* */
@media(min-width:737px){
    #breadcrumb {
        font-size: 12px;
        line-height: 1.0em;
        color: #3D3D3D;
    }
    #breadcrumb ul {
        display: block;
        text-align: left;
        margin: 12px auto;
    }
    #breadcrumb ul li {
        display: inline;
        padding: 0em 0em;
    }
    #breadcrumb ul li:nth-of-type(n+2)::before{
        display: inline;
        text-align: center;
        content: ">";
        color: #0075C1;
        width: 18px;
        height: 12px;
        padding: 0em 0.5em;
    }
    #breadcrumb ul li a {
        color: #0075C1;
        text-decoration: none;
    }
    #breadcrumb ul li a:hover{
        color: #0075C1;
        text-decoration: underline;
    }
}
/* ******************************************* */
/*          Breadcrumb SP
/* ******************************************* */
@media(max-width:736px){
    #breadcrumb {
    	padding: 2vw 0vw;
        font-size: 12px;
        line-height: 24px;
        color: #3D3D3D;
    }
    #breadcrumb ul {
        display: block;
        text-align: left;
    }
    #breadcrumb ul li {
        display: inline;
        padding: 0em 0em;
    }
    #breadcrumb ul li:nth-of-type(n+2)::before{
        display: inline-block;
        text-align: center;
        content: ">";
        color: #0075C1;
        width: 18px;
        height: 12px;
        padding: 0em 0.5em;
    }
    #breadcrumb ul li a {
        color: #0075C1;
        text-decoration: none;
    }
}

/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          PC SP 共通（拡張）
/* ******************************************* */
.mincho {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.alp-gothic {
    font-family: 'Century Gothic', 'Quicksand', sans-serif;
}
.italic { font-style: italic; }
.add-relative { position: relative; }
.tx_red { color: #CF000D; }
.tx_blue { color: #1A5FAD; }
.hover_white:hover { opacity: 0.75; }


/* -------------------------------------------------------------------------------------------------- */

/* ******************************************* */
/*          iframe
/* ******************************************* */
.googlemap_wrap{
	position: relative;
	padding-bottom: 88%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	border: 1px solid #ccc;
	margin-bottom: 40px;
}
.googlemap_wrap img.fitimage{
	max-width: 900px;
}
.googlemap_wrap iframe,
.googlemap_wrap object,
.googlemap_wrap embed{
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
