/*===== ADD FONTS =====*/


/*===== CSS RESET =====*/

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,cite,code,del,dfn,img,ins,kbd,q,s,samp,strike,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,input,textarea,select{outline:none;border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}.clear{clear:both}.clearfix:after{content:" ";display:table;clear:both}.clearfix{*zoom:1}ul,ol{list-style:none;}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body *{max-height:99999em}body img{max-height:none}


/*===== COMMON =====*/

html, body {
	width: 100%;
	min-height: 100%;
}
body {
	background: #FFF;
	font-size: 12px;
	line-height: 1.5;
	font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	-webkit-text-size-adjust: none;
	color: #000;
}

.ft_serif {
	font-family: "Hiragino Mincho Pro", Times, "Times New Roman", Georgia, serif;
}
.ft_hksw5 {
    font-family: 'Noto Sans JP', Meiryo, sans-serif;
    font-weight:400;
}
.ft_hkpw6 {
    font-family: 'Noto Sans JP', Meiryo, sans-serif;
    font-weight:500;
}
.ft_hksw8 {
    font-family: 'Noto Sans JP', Meiryo, sans-serif;
    font-weight:700;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    body {
        font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
    }
    .ft_hksw5,
    .ft_hkpw6,
    .ft_hksw8 {
        font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
        font-weight: bold;
    }
}
.ie9 body {
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
}
.ie9 .ft_hksw5,
.ie9 .ft_hkpw6,
.ie9 .ft_hksw8 {
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
    font-weight: bold;
}

a {
	color: #333;
	text-decoration: none;
}

.trans {
	opacity: 1;
}
.trans:hover {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
	filter: alpha(opacity=80);
	-moz-opacity: .8;
	-khtml-opacity: .8;
	opacity: .8;
}

.container {
	width: 100%;
	min-width: 1100px;
	color: #333;
	font-family: 'Noto Sans JP', Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
	font-weight:400;

}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .container {
        font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
    }
}
.ie9 .container {
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
}

.wrapper {
	width: 980px;
	margin-left: auto;
	margin-right: auto;
}

#wpadminbar {
	display: none !important;
}

div.wpcf7 img.ajax-loader {
	display: inline-block;
	width: 16px;
	height: 16px;
}

/*===== FONT SIZE =====*/

@media (max-width: 640px) { body { font-size: 24px } }
@media (max-width: 635px) { body { font-size: 23.8125px } }
@media (max-width: 630px) { body { font-size: 23.625px } }
@media (max-width: 625px) { body { font-size: 23.4375px } }
@media (max-width: 620px) { body { font-size: 23.25px } }
@media (max-width: 615px) { body { font-size: 23.0625px } }
@media (max-width: 610px) { body { font-size: 22.875px } }
@media (max-width: 605px) { body { font-size: 22.6875px } }
@media (max-width: 600px) { body { font-size: 22.5px } }
@media (max-width: 595px) { body { font-size: 22.3125px } }
@media (max-width: 590px) { body { font-size: 22.125px } }
@media (max-width: 585px) { body { font-size: 21.9375px } }
@media (max-width: 580px) { body { font-size: 21.75px } }
@media (max-width: 575px) { body { font-size: 21.5625px } }
@media (max-width: 570px) { body { font-size: 21.375px } }
@media (max-width: 565px) { body { font-size: 21.1875px } }
@media (max-width: 560px) { body { font-size: 21px } }
@media (max-width: 555px) { body { font-size: 20.8125px } }
@media (max-width: 550px) { body { font-size: 20.625px } }
@media (max-width: 545px) { body { font-size: 20.4375px } }
@media (max-width: 540px) { body { font-size: 20.25px } }
@media (max-width: 535px) { body { font-size: 20.0625px } }
@media (max-width: 530px) { body { font-size: 19.875px } }
@media (max-width: 525px) { body { font-size: 19.6875px } }
@media (max-width: 520px) { body { font-size: 19.5px } }
@media (max-width: 515px) { body { font-size: 19.3125px } }
@media (max-width: 510px) { body { font-size: 19.125px } }
@media (max-width: 505px) { body { font-size: 18.9375px } }
@media (max-width: 500px) { body { font-size: 18.75px } }
@media (max-width: 495px) { body { font-size: 18.5625px } }
@media (max-width: 490px) { body { font-size: 18.375px } }
@media (max-width: 485px) { body { font-size: 18.1875px } }
@media (max-width: 480px) { body { font-size: 18px } }
@media (max-width: 475px) { body { font-size: 17.8125px } }
@media (max-width: 470px) { body { font-size: 17.625px } }
@media (max-width: 465px) { body { font-size: 17.4375px } }
@media (max-width: 460px) { body { font-size: 17.25px } }
@media (max-width: 455px) { body { font-size: 17.0625px } }
@media (max-width: 450px) { body { font-size: 16.875px } }
@media (max-width: 445px) { body { font-size: 16.6875px } }
@media (max-width: 440px) { body { font-size: 16.5px } }
@media (max-width: 435px) { body { font-size: 16.3125px } }
@media (max-width: 430px) { body { font-size: 16.125px } }
@media (max-width: 425px) { body { font-size: 15.9375px } }
@media (max-width: 420px) { body { font-size: 15.75px } }
@media (max-width: 415px) { body { font-size: 15.5625px } }
@media (max-width: 410px) { body { font-size: 15.375px } }
@media (max-width: 405px) { body { font-size: 15.1875px } }
@media (max-width: 400px) { body { font-size: 15px } }
@media (max-width: 395px) { body { font-size: 14.8125px } }
@media (max-width: 390px) { body { font-size: 14.625px } }
@media (max-width: 385px) { body { font-size: 14.4375px } }
@media (max-width: 380px) { body { font-size: 14.25px } }
@media (max-width: 375px) { body { font-size: 14.0625px } }
@media (max-width: 370px) { body { font-size: 13.875px } }
@media (max-width: 365px) { body { font-size: 13.6875px } }
@media (max-width: 360px) { body { font-size: 13.5px } }
@media (max-width: 355px) { body { font-size: 13.3125px } }
@media (max-width: 350px) { body { font-size: 13.125px } }
@media (max-width: 345px) { body { font-size: 12.9375px } }
@media (max-width: 340px) { body { font-size: 12.75px } }
@media (max-width: 335px) { body { font-size: 12.5625px } }
@media (max-width: 330px) { body { font-size: 12.375px } }
@media (max-width: 325px) { body { font-size: 12.1875px } }
@media (max-width: 320px) { body { font-size: 12px } }


/*===== RESPONSIVE =====*/

.sm {
	display: none !important;
}

@media (max-width: 640px) {

	body {
		color: #333
	}

	a {
		color: #333
	}

	.md {
		display: none !important;
	}
	.sm {
		display: block !important;
	}

	img {
		display: block;
		width: 100%;
		height: auto;
	}
	img.inline {
		display: inline;
		width: auto;
	}

	.trans {
		opacity: 1;
	}
	.trans:hover {
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
		filter: alpha(opacity=100);
		-moz-opacity: 1;
		-khtml-opacity: 1;
		opacity: 1;
	}

	.container {
		width: auto;
		min-width: 0;
	}
	.wrapper {
		width: auto;
		margin: 0;
	}

}


/*===== HEADER =====*/

header {
	padding: 23px 0 8px;
	position: fixed;
	z-index: 2000;
	width: 100%;
	left: 0;
	top: 0;
	background: rgba(255,255,255,0.75);
}
header .header-logo {
	float: left;
	width: 214px;
	margin-left: -6px
}
header .header-menu {
	float: right;
	margin-top: 17px
}
header .header-menu > li {
	float: left;
	min-width: 86px;
	background: url(../img/common/dot.png) repeat-y 0 0;
}
header .header-menu a {
	display: block;
	padding: 6px 5px 5px;
	height: 23px;
	line-height: 1em;
	text-align: center;
}
header .header-menu > li:first-child {
	background: none
}
header .header-menu > li:first-child a {
	padding-right: 14px;
	padding-left: 14px;
}
header .header-menu .current {
	background: none
}
header .header-menu .current a {
	background: #4084c0;
	color: #fff;
	margin: -5px 0 -7px;
	padding-top: 11px;
	height: 35px
}

@media (max-width: 640px) {

	header {
		padding: 0
	}
	header .header-logo {
		width: 37.5%;
		margin-left: 0
	}
	header .btn-menu {
		width: 13.90625%;
		float: right;
	}

}


/* 20240110 */
header.header {
	padding: 10px 0 8px;
}
	@media (max-width: 640px) {
		header.header {
			padding: 0
		}
	}
header.header .wrapper {
	display: flex;
}
	@media (max-width: 640px) {
		header.header .wrapper {
			display: block;
		}
	}
.header-img {
	display: flex;
}
	@media (max-width: 640px) {
		.header-img {
			display: block;
		}
	}
.header-img figure {
	width: 74px;
	margin: 0 0 0 .1rem;
}
	@media (max-width: 640px) {
		.header-img figure {
			display: none;
		}
	}
.header-img figure::first-child {
	width: auto;
	margin: 0 0 0 .8rem;
}
.header-img figure img {
	display: block;
	margin: 0 auto;
}
.header-img figure figcaption {
	font-size: 10px;
	text-align: center;	
}
.header-nav .freecall {
	display: flex;
	justify-content: flex-end;
	color: #005caf;
}
	@media (max-width: 640px) {
		.header-nav .freecall {
			display: none;
		}
	}
.header-nav .freecall > a {
	color: #005caf;
	font-size: 2rem;
	font-weight: bold;
	line-height: .8;
}
.header-nav .freecall > a::before {
	content: url(../img/common/freecall.png);
	width: 30px;
	height: 20px;
	padding-right: .6rem;
}
@media (min-width: 751px) {
	.freecall a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}
.header-nav .freecall p {
	display: flex;
	font-size: .8rem;
	font-weight: bold;
	line-height: 1;
	margin-left: 1rem;
}
.header-nav .freecall p.translate {
	color: #333;
	margin-right: 3rem;
	padding-top: .5rem;
}
.header-nav .freecall p.translate a {	
	color: #333;
	font-size: .9rem;
	font-weight: normal;
}
.header-nav .freecall p.translate a:hover {	
	text-decoration: underline;
}
/* -- 20240110 -- */


/*===== NAVIGATION =====*/

@media (max-width: 1024px) {
	.header-nav .freecall .translate {
		display: none;
	}
}
@media (max-width: 640px) {

	#overlay-menu {
		position: fixed;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 1020;
		display: none;
		background: rgba(0,0,0,0.5);
	}
	.body-hidden {
        position: fixed;
        width: 100%;
        overflow: hidden;
    }
    .navigation-sm {
    	position: fixed;
    	right: -70%;
    	z-index: 2000;
    	top: 0;
    	height: 100%;
    	overflow-y: auto;;
    	width: 70%;
    	background: #4084c1;
    	font-size: 1.166666666666667em;
    	letter-spacing: 0.096em;
    	line-height: 1.4em;
    	color: #fff
    }
    .navigation-sm a {
    	display: block;
    	color: #fff;
    	padding: 0.7em 0.5em 0.7em 1.2em
    }
    .navigation-sm .navi-menu {
    	position: relative;
    }
    .navigation-sm .navi-menu > li {
    	border-bottom: 1px solid rgba(255,255,255,0.5)
    }
    .navigation-sm .navi-menu > li:last-child {
    	border-bottom: none
    }
	.translate {
		margin: 5px 20px 0;
	}
	.translate a {
		display: block;
		text-align: center;
		border: 1px solid #fff;
		margin: 0 auto;
		padding: .2rem;
	}

}


/*===== FOOTER =====*/

footer {
	margin: 74px 0 0;
}
footer .footer-menu {
	font-size: 1px;
	text-align: center;
	margin-bottom: 14px
}
footer .footer-menu > li {
	display: inline-block;
	min-width: 88px;
	background: url(../img/common/dot.png) repeat-y 0 0;
	padding-left: 1px
}
footer .footer-menu a {
	display: block;
	padding: 6px 5px 5px;
	height: 23px;
	line-height: 1em;
	font-size: 12px;
	text-align: center;
}
footer .footer-menu > li:first-child {
	background: none;
	padding-left: 0
}
footer .footer-menu > li:first-child a {
	padding-right: 16px;
	padding-left: 16px;
}
footer .footer-bottom {
	background: rgba(54,189,239,0.8);
	padding: 35px 0 70px;
	color: #fff;
	position: relative;
}
footer .footer-bottom a {
	color: #fff
}
footer .footer-bottom .ul-menu {
	float: left;
	line-height: 1em;
}
footer .footer-bottom .ul-menu > li {
	float: left;
	padding: 0 13px 0 20px;
	background: url(../img/common/arrow01.png) no-repeat right center;
}
footer .footer-bottom .ul-menu > li:first-child {
	padding-left: 0
}
footer .footer-bottom .copyright {
	float: right;
	line-height: 1em
}
.btn-top {
	width: 53px;
	height: 53px;
	background: url(../img/common/gototop.png) no-repeat 0 0;
	position: fixed;
	z-index: 1000;
	left: 50%;
	bottom: 0;
	display: none;
	margin-left: 437px;
}
.btn-top.fixed-btn {
	bottom: auto;
	top: -53px;
	position: absolute;
}

@media (max-width: 1100px) {
	.btn-top {
		left: auto;
		margin-left: 0;
		right: 0;
	}
	.btn-top.fixed-btn {
		right: 60px
	}
}

@media (max-width: 640px) {

	footer {
		margin: 0;
	}
	footer .footer-bottom {
		padding: 0.8em 0.8333333333333333em;
		background: #303030
	}
	footer .footer-bottom .copyright {
		float: none;
		line-height: 1em;
		font-size: 0.5em;
		text-align: center;
		margin-top: 2.5em
	}
	footer .footer-lik {
		text-align: right;
		font-size: 0.7866666666666667em;
		line-height: 1em
	}
	footer .footer-lik a {
		color: #fff;
		background: url(../img/common/sm/arrow03.png) no-repeat right center;
		background-size: 0.6355932203389831em auto;
		padding: 0 1em 0 0
	}
	.btn-top {
		width: 2.208333333333333em;
		height: 2.208333333333333em;
		background-size: 100% 100%;
		right: 0.8333333333333333em;
		bottom: 0.8333333333333333em;
		left: auto;
		margin-left: 0
	}
	.btn-top.fixed-btn {
		top: -2.208333333333333em;
		right: 0.8333333333333333em;
	}

}

/*===== BREADCRUMB =====*/
.section-breadcrumb {
	background: #f6f6f6;
	width: 100%;
	line-height: 1.2em;
	padding: 5px 0;
}
.section-breadcrumb .breadcrumb > li {
	float: left;
	position: relative;
	padding-right: 20px;
}
.section-breadcrumb .breadcrumb > li:before {
	content: '>';
	position: absolute;
	right: 5px;
	top: -1px;
}
.section-breadcrumb .breadcrumb > li >  a {
	color: #4084c0;
}
.section-breadcrumb .breadcrumb > li:last-child >  a {
	color: #000000;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .section-breadcrumb .breadcrumb > li:before {
		top: 0;
	}
}
.ie9 .section-breadcrumb .breadcrumb > li:before {
	top: 0;
}
.section-breadcrumb .breadcrumb > li:last-child {
	padding-right: 0
}
.section-breadcrumb .breadcrumb > li:last-child:before {
	display: none
}
@media (max-width: 640px) {

	.section-breadcrumb {
		padding: 0.2em 0.8333333333333333em;
		overflow-x: scroll;
	}
	.section-breadcrumb .breadcrumb {
		font-size: 0.8em
	}
	.section-breadcrumb .breadcrumb > li {
		padding-right: 2em;
		white-space: nowrap;
	}
	.section-breadcrumb .breadcrumb > li:before {
		right: 0.6em;
		top: -0.1em;
	}

}

/*===== BANNER =====*/
.mod-banner {
	background: #4084c0;
}
.mod-banner .wrapper {
	width: 1014px;
	position: relative;
}
.mod-banner .ttl {
	position: absolute;
	width: 100%;
	text-align: center;
	z-index: 1;
	top: 64px;
}
.mod-banner .ttl img {
	vertical-align: top;
}
@media (max-width: 640px) {

	.mod-banner {
		overflow: hidden;
	}
	.mod-banner .wrapper {
		width: auto;
		margin: 0 -1em;
	}
	.mod-banner .ttl {
		position: absolute;
		width: 70%;
		text-align: center;
		z-index: 1;
		top: 50%;
		margin: -6.5% 0 0 -35%;
		left: 50%
	}
	.mod-banner .ttl img {
		vertical-align: top;
	}
}

/*===== MODULE01 =====*/

.section-module01 {
	background: #f0f5f9;
	padding: 47px 0 50px
}
.section-module01 .module-inner {
	margin-top: 25px
}
.section-module01 .module-inner .image {
	width: 490px;
	float: right
}
.section-module01 .module-info {
	width: 490px;
	float: left;
}
.section-module01 .module-info .desc {
	line-height: 1.714285714285714em;
	font-size: 14px;
	letter-spacing: 0.2em
}
@media (max-width: 640px) {
	.section-module01 {
		padding: 2.5em 0.8333333333333333em 3em
	}
	.section-module01 .module-inner {
		margin-top: 1.3em
	}
	.section-module01 .module-inner .image {
		width: 80%;
		margin: 0 auto;
		float: none
	}
	.section-module01 .module-info {
		margin-top: 1em;
		float: none;
		width: auto
	}
	.section-module01 .module-info .desc {
		line-height: 1.714285714285714em;
		font-size: 1em;
		letter-spacing: 0.1em
	}
}

/*===== MODULE02 =====*/

.section-module02 {
	background: #f7f7f7;
	padding: 49px 0 50px
}
.section-module02 .module-inner {
	margin-top: 30px
}
.section-module02 .module-inner .image {
	width: 472px;
	float: left;
	border: 1px solid #e2e2e2
}
.section-module02 .module-inner .image img {
	display: block;
	width: 100%
}
.section-module02 .module-inner .module-info {
	width: 490px;
	float: right
}
.section-module02 .module-inner .module-info .desc {
	line-height: 1.714285714285714em;
	/*padding-left: 20px;*/
	margin-top: -6px;
	font-size: 14px;
	letter-spacing: 0.1em
}
.section-module02 .module-inner .module-info .ul-lik {
	margin: 2px 0 0 -10px;
}
.section-module02 .module-inner .module-info .ul-lik > li {
	width: 240px;
	float: left;
	margin: 10px 0 0 10px;
}
.section-module02 .module-inner .module-info .ul-lik .btn > span {
	font-size: 12px;
}
@media (max-width: 640px) {

	.section-module02 {
		padding: 2.5em 1.25em
	}
	.section-module02 .module-inner {
		margin-top: 1.8em
	}
	.section-module02 .module-inner .image,
	.section-module02 .module-inner .module-info {
		width: auto;
		float: none;
	}
	.section-module02 .module-inner .module-info .desc {
		line-height: 1.5em;
		padding-left: 0;
		margin-top: 1em;
		font-size: 1em;
	}
	.section-module02 .module-inner .module-info .ul-lik {
		margin: 0.8em 0 0 -0.4em;
	}
	.section-module02 .module-inner .module-info .ul-lik > li {
		width: 50%;
		margin: 0;
		padding: 0.4em 0 0 0.4em;
	}
	.section-module02 .module-inner .module-info .ul-lik .btn > span {
		font-size: 0.6em;
	}

}



/*===== MAIN =====*/

.main {
	margin-top: 80px;	
	overflow: hidden;
}
.img {
	display: block;
	max-width: 100%
}
.section-module {
	margin-top: 50px;
}
.section-module .btn {
	width: 340px;
	height: 46px;
}
.section-module .btn > span {
	font-size: 16px;
	line-height: 1em;
	letter-spacing: 0.1em
}
.section-module .btn:before {
	right: 13px;
}
.mod-link {
	margin: 60px 0 60px 2px;
}
.mod-link > li {
	width: 240px;
	float: left;
	margin-left: 6px;
}
.mod-link > li:first-child {
	margin-left: 0
}
.mod-link > li img {
	display: block;
	width: 100%
}
.mod-link > li a {
	display: block;
}

.mod-link01 {
	display: flex;
	justify-content: space-between;
}
.mod-link01 > li {
	width: 23%;
}
.mod-link01 > li img {
	width: 100%
}

.mod-row {

}
.mod-list {
	margin: -5px -40px 0 0;
	font-size: 1px;
}
.mod-list > li {
	width: 310px;
	display: inline-block;
	margin: 25px 25px 0 0;
	vertical-align: top;
}
.mod-list .ttl {
	font-size: 16px;
	line-height: 1.4em;
	color: #4c4c4c
}
.mod-list .image {
	border: 1px solid #e2e2e2;
	margin: 8px 0 0;
}
.mod-list .image img {
	display: block;
	width: 100%
}
.mod-list .desc {
	font-size: 12px;
	line-height: 1.5em;
	margin: 7px 0 0;
	letter-spacing: 0.075em
}
.mod-list .btn {
	background: #c9c9c9;
	margin-top: 16px;
}
.mod-list .btn > span {
	color: #fff;
	font-size: 12px;
}

.mod-step {
	margin: 40px 0 0;
}
.mod-step > li {
	width: 310px;
	float: left;
	position: relative;
	margin-right: 24px;
}
.mod-step > li:last-child {
	margin-right: 0;
}
.mod-step > li:last-child .image:before {
	display: none
}
.mod-step .number {
	width: 49px;
	position: absolute;
	left: 0;
	top: 0;
}
.mod-step .number img {
	display: block;
	width: 100%
}
.mod-step .number > span {
	font-size: 16px;
	line-height: 1em;
	display: block;
}
.mod-step .ttl {
	font-size: 16px;
	color: #4c4c4c;
	padding: 10px 0 10px 60px;
	letter-spacing: 0.1em;
	min-height: 47px
}
.mod-step .image {
	margin-top: 5px;
	position: relative;
	border: 1px solid #e2e2e2
}
.mod-step .image:before {
	width: 15px;
	height: 37px;
	content: ' ';
	position: absolute;
	left: 100%;
	margin-left: 7px;
	top: 50%;
	margin-top: -19px;
	background: url(../img/common/arrow05.png) no-repeat 0 0;
}
.mod-step .image img {
	display: block;
	width: 100%
}
.mod-step .caption {
	line-height: 1.5em;
	font-size: 12px;
	letter-spacing: 0.075em;
	margin-top: 6px
}

.mod-ol {
	margin-right: -24px
}
.mod-ol > li {
	width: 310px;
	margin-right: 24px;
	float: left;
}

.mod-item {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #e2e2e2;
	padding: 17px 10px 25px
}
.mod-item .ttl {
	background: url(../img/common/bullet02.png) no-repeat 0 4px;
	border-bottom: 1px dotted #00c0ff;
	font-size: 16px;
	padding: 2px 0 18px 24px;
	line-height: 1.2em;
}
.mod-item .caption {
	line-height: 1.5em;
	margin: 18px 0 0;
	letter-spacing: 0.075em
}

.mod-box {
	margin: 29px 0 0;
}
.mod-box .image {
	width: 460px;
	float: left;
}
.mod-box .box-info {
	width: 490px;
	float: right;
	margin-top: -3px
}
.mod-box .box-info .ttl {
	border-bottom: 1px dotted #00c0ff;
	font-size: 16px;
	line-height: 1.4em;
	padding: 0 0 16px
}
.mod-box .box-info .caption {
	margin: 17px 0 0;
	font-size: 14px;
	line-height: 1.714285714285714em;
	letter-spacing: 0.1em
}

.btn {
	width: 100%;
	height: 45px;
	display: table;
	position: relative;
	text-align: center;
	color: #fff;
	margin: 0 auto;
	background: #4084c0;
}
.btn > span {
	display: table-cell;
	vertical-align: middle;
	line-height: 1.25em;
	font-size: 15.33px;
	letter-spacing: 0.1em;
	padding: 2px 5px;
}
.btn:before {
	content: ' ';
	width: 9px;
	height: 14px;
	position: absolute;
	top: 50%;
	right: 11px;
	background: url(../img/common/arrow01.png) no-repeat 0 0;
	margin-top: -7px
}
.btn.back:before {
	right: auto;
	left: 11px;
	background-image: url(../img/common/arrow07.png);
}


.bg-clor01 {
	background: #36bdef
}
.bg-clor02 {
	background: #ffb168
}
.bg-clor03 {
	background: #005bab
}
.bg-clor04 {
	background: #71b527
}
.bg-clor05 {
	background: #f085bc
}

.desc-block {
	font-size: 16px;
	line-height: 1.6875em;
	text-align: center;
	letter-spacing: 0.2em
}
.summary-bl {
	font-size: 14px;
	line-height: 1.714285714285714em;
	margin-top: 20px;
	letter-spacing: 0.1em
}

.sec-ttl {
	font-size: 24px;
	text-align: center;
	line-height: 1em;
	letter-spacing: 0.2em;
	color: #005bab
}
.sec-ttl01 {
	font-size: 24px;
	text-align: center;
	line-height: 1.5em;
}
.sec-ttl02 {
	text-align: center;
}
.sec-ttl02 .en img {
	display: block;
	max-width: 100%;
	margin: 0 auto;
}
.sec-ttl02 .jp {
	font-size: 14px;
	line-height: 1em;
	margin-top: 7px;
	color: #333;
	letter-spacing: 0.3em;
	display: block;
}
@media (max-width: 640px) {
	.main {
		margin-top: 12.65625%
	}
	img,
	.img {
		display: block;
		max-width: 100%
	}
	.section-module {
		margin-top: 50px;
		/* padding: 2.5em 3.25em 3.958333333333333em */
		padding: 0 1em;
	}
	.section-module .btn {
		width: 100%;
		height: 3.5em;
		line-height: 1em;
	}
	.section-module .btn > span {
		font-size: 1.166666666666667em;
	}
	.section-module .btn:before {
		right: 0.8em;
	}

	.mod-link {
		margin: 1.199966666666667em -0.3333333333333333em 1.199966666666667em;
	}
	.mod-link > li {
		width: 50%;
	}
	.mod-link > li a .ttl {
		margin-top: -0.5em;
		font-size: 1em;
	}

	.mod-link01 {
		flex-wrap: wrap;
		justify-content: space-around;
		margin-bottom: 20px;
	}
	.mod-link01 > li {
		width: 48%;
		margin-bottom: 10px;
	}
	.mod-link01 > li img {
		width: 100%
	}

	.mod-list {
		margin: 0;
		font-size: 1em;
	}
	.mod-list > li {
		width: auto;
		display: block;
		margin: 2.5em 0 0 0;
	}
	.mod-list .ttl {
		font-size: 1.1em;
		text-align: center;
	}
	.mod-list .image {
		border: 1px solid #e2e2e2;
		margin: 0.7em 0 0;
	}
	.mod-list .desc {
		font-size: 0.9em;
		line-height: 1.5em;
		margin: 0.8em 0 0;
		letter-spacing: 0.075em
	}
	.mod-list .btn {
		margin: 1em auto 0;
		width: 80.66666666666667%
	}
	.mod-list .btn > span {
		font-size: 1em;
	}

	.mod-step {
		margin: 2em 0 0;
	}
	.mod-step > li {
		width: auto;
		float: none;
		position: relative;
		margin: 2em 0 0;
	}
	.mod-step .number {
		width: 3em;
	}
	.mod-step .number > span {
		font-size: 1.3em;
	}
	.mod-step .ttl {
		font-size: 1.1em;
		padding: 0.6em 0 0.5em 3.5em;
		letter-spacing: 0.1em;
		min-height: 2em
	}
	.mod-step .image {
		margin-top: 1em;
	}
	.mod-step .image:before {
		display: none
	}
	.mod-step .caption {
		font-size: 1em;
		margin-top: 0.5em
	}

	.mod-ol {
		margin: 0;
	}
	.mod-ol > li {
		float: none;
		width: auto;
		margin: 1.5em 0 0
	}

	.mod-item {
		-webkit-border-radius: 0.35em;
		-moz-border-radius: 0.35em;
		-ms-border-radius: 0.35em;
		-o-border-radius: 0.35em;
		border-radius: 0.35em;
		padding: 1.2em 1em
	}
	.mod-item .ttl {
		background-position: 0 0.4em;
		background-size: 1em auto;
		font-size: 1em;
		padding: 0.3em 0 1em 1.5em;
	}
	.mod-item .caption {
		line-height: 1.5em;
		margin: 1em 0 0;
		letter-spacing: 0.075em
	}

	.mod-box {
		margin: 1.3em 0 0;
	}
	.mod-box .image,
	.mod-box .box-info {
		width: auto;
		float: none;
	}
	.mod-box .box-info {
		margin-top: 1em
	}
	.mod-box .box-info .ttl {
		font-size: 1.1em;
		padding: 0 0 0.5em
	}
	.mod-box .box-info .caption {
		margin: 1em 0 0;
		font-size: 0.95em;
		line-height: 1.5em;
	}

	.btn {
		height: 2.833333333333333em;
		padding: 0.3em;
	}
	.btn > span {
		font-size: 1.041666666666667em;
		letter-spacing: 0.05em
	}
	.btn:before {
		content: ' ';
		width: 0.6428571428571429em;
		height: 1em;
		right: 0.5em;
		background-image: url(../img/common/sm/arrow01.png);
		background-size: 100% 100%;
		margin-top: -0.5em
	}
	.btn.back:before {
		right: 0.5em;
		background-image: url(../img/common/sm/arrow07.png);
	}

	.sec-ttl {

	}
	.desc-block {
		font-size: 1em;
	}
	.summary-bl {
		font-size: 1em;
		margin-top: 1em;
	}


	.sec-ttl {
		font-size: 1.2em;
		line-height: 1.4em
	}
	.sec-ttl01 {
		font-size: 1.2em;
	}
	.sec-ttl02 {
		text-align: left;
	}
	.sec-ttl02 .en img {
		width: 100%;
	}
	.sec-ttl02 .jp {
		font-size: 0.8333333333333333em;
		margin-top: 0.55em;
	}

}



/*===== SITE MAP =====*/
.ttl_sitemap {
	font-size: 1.6em;
	margin-top: 10px;
}
.simple-sitemap-page,
.simple-sitemap-shop{
  font-size: 16px;
  margin-top: 5px;
}
.simple-sitemap-page li,
.simple-sitemap-shop li{
  list-style-type: disc;
  list-style-position: inside;
}
.simple-sitemap-page ul > li,
.simple-sitemap-shop ul > li {
  margin-left: 2em;
}


/*===== CREDIT AREA =====*/
.credit_area {
	width: 100%;
	text-align: center;
	margin: 30px auto;
}
.credit_area div {
	margin: 0 auto 20px;
}
.credit_area .pc {
	display: block;
}
.credit_area .sp {
	display: none;
}
@media (max-width: 768px) {
	.credit_area {
		margin: 0 auto;
	}
	.credit_area .pc {
		display: none;
	}
	.credit_area .sp {
		display: block;
	}
}


/* 20240110 */
html {
	scroll-behavior: smooth;
}


/* ----------------------------------
    Footer
---------------------------------- */
.section-module .mod-find-shop,
.section-module .mod-link {
	display: none;
}

/* ----------------------------------
    Mail visual
---------------------------------- */
.child-mv h2.ttl {
	color: #fff;
	top: 70px;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: .4rem;
}
.child-mv h2.ttl span {
	font-size: 1rem;
	font-weight: normal;
}
	@media (max-width: 750px) {
		.child-mv h2.ttl {
			top: 50%;
			font-size: 2rem;
			line-height: .7;
		}
		.child-mv h2.ttl span {
			font-size: .8rem;
		}

	}


/* SALE
--------------------- */
.post-type-archive-sales .child-mv,
.single-sales .child-mv {
	background: #cd2a81;
}


/* COLUMN
--------------------- */
.post-type-archive-columns .child-mv,
.single-columns .child-mv {
	background: #8e278a;
}