*{
	font-family: 'noto-sans-cjk-jp', sans-serif;
	font-feature-settings: "palt";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #001655;
	box-sizing: border-box;
	word-break: break-all;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8em;
	letter-spacing: 0.13em;
	text-align: justify;
}

.tsukushi{ font-family: fot-tsukuardgothic-std, sans-serif;  font-weight: 700; font-style: normal; letter-spacing: 0; }

br{ line-height: inherit; }

span, a, strong, small{
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	font-family: inherit;
	letter-spacing: inherit;
}

.wrap{ width: 800px; margin: 0 auto; }
.linkwrap{
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
}
.body-wrap{ overflow: hidden; transition: .3s; position: relative; }

.sp{ display: none; }

a{ transition: .3s; }
a:hover{ opacity: .6; }

header{ padding: 50px 0 0 50px; position: absolute; top: 0; left: 0; z-index: 100; }
header.clone{ display: flex; align-items: center; justify-content: center; padding: 14px; width: 100%; background: rgba(255,255,255,.9); position: fixed; top: -100px; transition: .6s; z-index: 1000; }
header.clone.fix{ top: 0; }
header .clone-logo{ display: none; }
header.clone .clone-logo{ display: table; width: 60px; margin-right: 30px; }
header.clone .clone-logo img{ width: 100%; }
header.clone .btn-list{ order: 3; }
header .btn-list{ display: flex; justify-content: space-between; width: 350px; }
header .btn-list a{ display: flex; justify-content: center; align-items: center; width: 170px; height: 36px; border: solid 2px #001655; border-radius: 18px; }
header .btn-list li:nth-of-type(1) a{ font-size: 16px; background: #fff; }
header .btn-list li:nth-of-type(1) a span{ position: relative; padding-left: 12px; }
header .btn-list li:nth-of-type(1) a span:before{ content: ''; width: 8.4px; height: 13px; background: url(../images/common/icon-headerbtn01.png) no-repeat; background-size: contain; position: absolute; top: 7px; left: 0; }
header .btn-list li:nth-of-type(2) a{ font-size: 13px; background: #ef9098; font-weight: 500; }
header .btn-list li:nth-of-type(2) a span{ position: relative; padding-left: 18px; }
header .btn-list li:nth-of-type(2) a span:before{ content: ''; width: 13px; height: 12px; background: url(../images/common/icon-headerbtn02.png) no-repeat; background-size: contain; position: absolute; top: 6px; left: 0; }
header nav ul{ display: flex; margin-top: 15px; }
header.clone nav ul{ margin-top: 0; margin-right: 20px; }
header nav ul li{ font-size: 13px; font-weight: 500; padding-right: 1em; position: relative; transition: .3s;font-weight: 600; }
header nav ul li:hover{ color: #ef9098; }
header nav ul li:not(:last-of-type){ border-right: solid 1px; }
header nav ul li:not(:first-of-type){ padding-left: 1em; padding-left: .8em;
    padding-right: .8em;}

table.hour-table{ max-width: 380px; width: 100%; table-layout: fixed; border: solid 2px #001655; }
table.hour-table th{ width: 130px; }
table.hour-table thead{ background: #001655; }
table.hour-table thead tr > *{ color: #fff; text-align: center; padding: 4px 0; }
table.hour-table tbody tr > *{ background: #fff; padding: 6px 0; text-align: center; }
table.hour-table tbody tr:nth-of-type(1){ border-bottom: solid 2px #001655; }
table.hour-table + p{ font-size: 12px; color: #222222; margin-top: 10px; }

a.btn{ width: 200px; height: 36px; display: flex; justify-content: center; align-items: center; font-weight: 500; background: #fff; border-radius: 18px; border: solid 2px #001655; }
a.btn span{ padding-right: 10px; position: relative; }
a.btn span:before{ content: ''; width: 20px; height: 1px; background: #001655; position: absolute; top: 12px; right: -16px; }
a.btn span:after{ content: ''; width: 6px; height: 1px; background: #001655; position: absolute; top: 10px; right: -16px; transform: skewY(39deg); }

.gmap iframe{ width: 100%; height: 400px; display: block; }

.foot-info .wrap{ display: flex; justify-content: space-between; width: 850px; padding: 66px 0 60px; }
.foot-info .wrap .left{ width: 430px; }
.foot-info .wrap .left .logo{ width: 430px; display: block; margin-bottom: 10px; }
.foot-info .wrap .left .logo.sp{ display: none; }
.foot-info .wrap .left table{ border-collapse: separate; border-spacing: 0 14px; }
.foot-info .wrap .left table th{ color: #222; background: #f2f2f2; text-align: center; vertical-align: middle; width: 70px; }
.foot-info .wrap .left table td{ color: #222; padding-left: 20px; }
.foot-info .wrap .right{ width: 380px; }
.foot-info .wrap .right a.tel{ background: #001655; color: #fff; font-size: 26px; display: flex; justify-content: center; align-items: center; width: 100%; height: 64px; margin: 22px 0 20px; }
.foot-info .wrap .right a.tel span{ padding-left: 22px; position: relative; }
.foot-info .wrap .right a.tel span:before{ content: ''; width: 14px; height: 22px; background: url(../images/common/icon-tel.png) no-repeat; background-size: contain; position: absolute; left: 0; top: 12px; }

footer{ background: #f2f2f2; padding: 66px 0 20px; }
footer .wrap{ display: flex; justify-content: space-between; width: 900px; }
footer .wrap dl dt{ font-size: 13px; font-weight: 500; margin-bottom: .3em; }
footer .wrap dl dd{ font-size: 13px; }
footer .wrap dl dd ul li{ padding-left: 1.5em; position: relative; margin-bottom: .3em; }
footer .wrap dl dd ul li:before{ content: '-'; position: absolute; left: 1em; }
footer .copy{ font-size: 11px; text-align: center; margin-top: 60px; }

.totop{ width: 80px; position: fixed; bottom: 30px; right: 40px; z-index: 1000; transition: .3s; visibility: hidden; opacity: 0; }
.totop.active{ opacity: 1; visibility: visible; }

.container .inner .blog_css h3 {
	margin-top:0;
}
.container .inner .blog_css strong{
	font-size: 1.2em;
    font-weight: 500;
    border-bottom: dotted 2px;
	color:#001655;
}

.container .inner .blog_css p a{
	color:#001655; 
}
.container .inner .blog_css h2{
	font-size: 22px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    background: #ef9098;
    padding: 4px 10px;
    margin: 80px 0 40px;
}


@media(max-width: 768px){
	
	.container .inner .blog_css h3,
	.container .inner .blog_css h2 {
		font-size:4.2vw; 
		letter-spacing:0;
	}
	.container .inner .blog_css strong{
		font-size:1em;
	}
	
	*{ font-size: 3.6666vw; }

	.pc{ display: none !important; }
	.sp{ display: block; }

	.wrap{ width: 100%; padding-left: 6.6666vw; padding-right: 6.6666vw; }

	a.btn{ font-size: 3.466vw; width: 53.333vw; height: 10.6666vw; border-radius: calc(10.6666vw / 2); }

	header nav{ opacity: 0; visibility: hidden; width: 100%; height: 100%; position: fixed; top: 0; left: 0; z-index: 9999; background: #ef9098; transition: .3s; }
	header nav.active{ opacity: 1;visibility: visible; }
	header nav ul{ flex-wrap: wrap; padding-top: 28vw; }
	header nav ul li{ width: 100%; padding: 0; text-align: center; font-size: 3.4666vw; margin-bottom: 1.4em; }
	header nav ul li:not(:first-of-type){ padding-left: 0; }
	header nav ul li:not(:last-of-type){ border-right: none; }

	table.hour-table th{ width: 30.1333vw; }
	table.hour-table thead tr > *{ padding: 1vw 0; }
	table.hour-table tbody tr > *{ padding: 1.4vw 0;font-size: 3.2vw; }
	table.hour-table + p{ font-size: 3.4666vw; margin-top: 1.4vw; }

	.gmap iframe{ height: 53.333vw; }

	.foot-info .wrap{ width: 100%; flex-wrap: wrap; padding: 17.3333vw 6.6666vw 20vw; }
	.foot-info .wrap .left{ width: 100%; }
	.foot-info .wrap .left .logo{ width: 66.2666vw; margin: 0 auto 9.3333vw; }
	.foot-info .wrap .left .logo.sp{ display: block; }
	.foot-info .wrap .left table,
	.foot-info .wrap .left table tbody,
	.foot-info .wrap .left table tr,
	.foot-info .wrap .left table th,
	.foot-info .wrap .left table td{ display: block; }
	.foot-info .wrap .left table th{ width: 100%; text-align: center; margin-bottom: 1em; }
	.foot-info .wrap .left table td{ padding: 0; margin-bottom: 1em; }
	.foot-info .wrap .left table td ul li{ display: flex; justify-content: space-between; position: relative; z-index: 0; }
	.foot-info .wrap .left table td ul li:before{ content: ''; width: 100%; height: 1px; border-bottom: dotted 1px; position: absolute; left: 0; top: 3vw; z-index: -1; }
	.foot-info .wrap .left table td ul li span{ color: #222; background: #fff; font-size: 3.2vw; }
	.foot-info .wrap .left table td ul li span:nth-of-type(2){ width: 64vw; }
	.foot-info .wrap .right a.tel{ font-size: 6.9333vw; height: 17.066vw; margin: 13.3333vw 0 8vw; }
	.foot-info .wrap .right a.tel span:before{ width: 3.6vw; height: 5.6vw; top: 3.4vw; }
	.foot-info .wrap .right a.tel span{ padding-left: 5vw; }

	footer{ padding: 7vw 0 22vw; }
	footer .copy{ font-size: 2.9333vw; margin: 0;letter-spacing: 0;}

	.float-btn{ display: flex; position: fixed; bottom: 0; left: 0; z-index: 1000; width: 100%; }
	.float-btn li{ position: relative; width: 50%; height: 16vw; display: flex; justify-content: center; align-items: center; border: solid 2px #001655; background: #001655; color: #fff; font-size: 4vw;  }
	.float-btn li span{ position: relative; padding-left: 5.3333vw; }
	.float-btn li span:before{ content: ''; width: 4.4vw; height: 4.8vw; background-size: contain; background-repeat: no-repeat; position: absolute; left: 0; top: 1.4vw; }
	.float-btn li:nth-of-type(1) span:before{ background-image: url(../images/common/icon-float01.png); }
	.float-btn li:nth-of-type(2) span:before{ background-image: url(../images/common/icon-float02.png); }
	.float-btn li:nth-of-type(2){ background: #ef9098; color: #001655; font-size: 4.5333vw; }
	.float-btn li:nth-of-type(2) small{ font-size: 4vw; vertical-align: text-top; }

	.menu-btn{ width: 8vw; position: fixed; top: 8vw; right: 8vw; z-index: 100000; }
	.menu-btn .inner{ width: 100%; height: 5.3333vw; position: relative; }
	.menu-btn .inner span{ width: 100%; height: 0.533vw; background: #001655; position: absolute; left: 0; transition: .3s; }
	.menu-btn .inner span:nth-of-type(1){ top: 0; }
	.menu-btn .inner span:nth-of-type(2){ top: 50%; transform: translateY(-50%); }
	.menu-btn .inner span:nth-of-type(3){ bottom: 0; }
}

/*20220201*/

.formula {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.formula .box.red {
    border-color: #f87e81;
    background: #ffe8e9;
}
.formula .box {
    width: calc((100% - 70px)/3);
    height: 90px;
    border: #555555 solid 2px;
    border-radius: 6px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
}

.formula .box {
    width: calc((100% - 70px)/3);
    height: 90px;
    border: #555555 solid 2px;
    border-radius: 6px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
}

