﻿html:not(.responsive) {
	width: 100%; /* viewport */
}

/*=============================================
 * body
 *=============================================*/
body {
	background: #fff;
	color: #111111;
	font-family: noto-sans-cjk-jp, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	line-height: 28px;
	text-align: left;
	letter-spacing: 0em;
	min-width: inherit;
	min-height: inherit;
	max-height: 100%;
}

.navOpen #pagetop {
	opacity: 0;
}

.txt-center {
	text-align: center;
}

/*=============================================
 * fonts - DON'T EDIT
 *=============================================*/
.fnt-mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.fnt-meiryo {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.fnt-gothic {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.fnt-sawarabi {
	font-family: 'Sawarabi Gothic', sans-serif;
}

.fnt-Midashi {
	font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
	font-weight: 600;
	font-style: normal;
}

/*=============================================
 * .fnt - customs
 *=============================================*/
.fnt-mincho {
}

.fnt-meiryo {
}

.fnt-gothic {
}

.fnt-garamond {
}

.fnt-noto {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

/*=============================================
 * <main>
 *=============================================*/
main {
	clear: both;
	width: 100%;
	position: relative;
	overflow: hidden;
}

/*=============================================
 * <header>
 *=============================================*/
header {
}

header h1 {
}

header .logo {
}

header .tel {
}

header nav {
}

/*=============================================
 * key
 *=============================================*/

/*=============================================
 * <section>
 *=============================================*/

section {
}

/*=============================================
 * <footer>
 *=============================================*/
footer {
	text-align: center;
	line-height: 18px;
}

footer .logo {
}

footer .tel {
}

footer nav {
}

/*
.socialbuttons .social-facebook   {
	    width: 93px !important;
    overflow: hidden;
	
}
.socialbuttons .fb_iframe_widget iframe {
	left: -67px;
}
*/

/*=============================================
 * .socialbuttons
 *=============================================*/

footer address {
}

/*=============================================
 * copyright
 *=============================================*/
address {
}

@media screen and (min-width:769px) {
	.pc_view {
		display: block;
	}

}

.hamburger-btn {
	cursor: pointer;
	width: 70px !important;
	height: 70px !important;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	z-index: 105;
	line-height: 1;
	font-size: 10px;
	text-align: center;
	letter-spacing: 0em;
}

.hamburger-btn i {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.hamburger-btn span {
	line-height: 1;
	background-color: #000;
	border-radius: 3px;
	height: 3px;
	width: 30px;
	position: absolute;
	top: 34px;
	left: calc(50% - 15px);
	display: block;
	-webkit-transition: all .45s ease 0s;
	transition: all .45s ease 0s;
}

.hamburger-btn:before {
	content: '';
	position: absolute;
	width: 30px;
	top: 25px;
	left: calc(50% - 15px);
	background-color: #000;
	height: 3px;
	border-radius: 3px;
	-webkit-transition: all .45s ease 0s;
	transition: all .45s ease 0s;
}

.hamburger-btn:after {
	content: '';
	position: absolute;
	width: 30px;
	top: 43px;
	border-radius: 3px;
	left: calc(50% - 15px);
	background-color: #000;
	height: 3px;
	-webkit-transition: all .45s ease 0s;
	transition: all .45s ease 0s;
}

.hamburger-btn.is-active:before {
	transform: rotate(-45deg);
	width: 28px;
	top: 35px;
	left: 21px;
}

.hamburger-btn.is-active:after {
	transform: rotate(45deg);
	width: 28px;
	top: 35px;
	left: 21px;
}

.hamburger-btn.is-active span {
	opacity: 0;
	left: 64px;
}

.hamburger-btn span:last-child {
	font-size: 11px;
	display: none !important;
	opacity: 1 !important;
	top: 13px;
	transform: none;
	left: 0;
	right: 0;
	background-color: transparent;
	width: 100%;
}

.sp_view1 {
	display: none;
}

@media screen and (max-width:768px) {
	.sp_view1 {
		display: block;
	}

}

button {
	-webkit-appearance: none;
	-moz-appearance: none;
	border: none;
	background: transparent;
}

.fc-form [class^='error'] {
	position: static !important;
}

.i-custom {
	cursor: pointer;
	display: block;
	position: relative;
	line-height: 50px;
	margin-bottom: 40px;
}

.i-custom +.i-custom {
}

.i-custom input {
	opacity: 0;
	position: absolute;
}

.i-custom .ico {
	padding-left: 60px;
	position: relative;
	display: inline-block;
}

.i-custom .ico:before, .i-custom .ico:after {
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	transition: all .3s ease;
}

.i-custom input[type="radio"] .ico:before, .i-custom input[type="radio"] .ico:after {
	border-radius: 100%;
}

.i-custom .ico:before {
	width: 50px;
	height: 50px;
	left: 0;
	background: #FFFFFF;
	border: 1px solid #333333;
	box-sizing: border-box;
	border-radius: 8px;
}

.i-custom .ico:after {
	background: url(../img/shared/check.png) no-repeat 0 0;
	-webkit-background-size: 100%;
	background-size: 100%;
	width: 16px;
	height: 15px;
	margin: 0;
	position: absolute;
	top: 17px;
	left: 17px;
	opacity: 0;
}

.i-custom:hover .ico:after {
	opacity: .5;
	transform: scale(1);
}

.i-custom input:checked ~ .ico:after {
	opacity: 1;
	transform: scale(1);
}

@media screen and (max-width:767px) {
	.i-custom .ico {
		padding-left: 51px;
	}

	.i-custom .ico:before {
		width: 36px;
		height: 36px;
	}

	.i-custom {
		font-size: 16px;
		line-height: 36px;
		margin-bottom: 30px;
	}

	.i-custom .ico:after {
		width: 12px;
		top: 12px;
		left: 12px;
	}

}

#article .group .sidebar .info dl a {
	word-break: break-all;
}

#article .h_tag .url a {
	word-break: break-all;
}
