@charset "UTF-8";

/*-----------------------------
タブレット
@media (min-width: 768px) {}

PC
@media (min-width: 1024px) {}

ワイドPC微調整
@media (min-width: 1280px) {}
------------------------------*/

/****************************************************************************
    common parts
****************************************************************************/

/* PC/SP/Tabletで表示・非表示
--------------------------------*/
/*SPの時のみに表示*/
.m-sp {
	display: block;
}
@media (min-width:768px){
	.m-sp {
		display: none;
	}
}

/*SPとタブの時に表示*/
.m-sp-tab {
	display: block;
}
@media (min-width:1024px){
	.m-sp-tab {
		display: none;
	}
}

/*PCとタブの時に表示*/
.m-pc-tab {
	display: none;
}
@media (min-width:768px){
	.m-pc-tab {
		display: block;
	}
}

/*PCの時のみに表示*/
.m-pc {
	display: none;
}
@media (min-width:1024px){
	.m-pc {
		display: block;
	}
}


/* box
--------------------------------*/
.m-inner {
	width: 100%;
	padding: 0 1rem;
}
@media (min-width:1024px){
	.m-inner {
		padding: 0 3rem;
	}
}
@media (min-width:1280px){
	.m-inner {
		padding: 0;
	    max-width: 1200px;
		margin: 0 auto;
	}
}

/* section */
.m-section {
	padding: 2rem 0 3rem 0;
}
@media (min-width:768px){
	
}
@media (min-width:1024px){
	.m-section {
		padding: 3rem 0 4rem 0;
	}
}



/* ボックス */
/*
.m-box {
	background-color: #fff;
	border-radius: 10px;
	padding: 1.5rem 1.5rem;
}
@media (min-width:768px){
	.m-box {
		border-radius: 20px;
		padding: 2.5rem 3rem;
	}
}
@media (min-width:1024px){
	.m-box {
		border-radius: 30px;
		padding: 3rem 4rem;
	}
}*/


/* 背景
--------------------------------*/
.m-bg-white {
	background-color: #FFF;
}



/* テキスト関連
--------------------------------*/
.m-txt-en {
	font-family: "Montserrat", sans-serif;
	font-weight: 400;
	letter-spacing: 0;
}

.m-txt-C {
	text-align: center;
}
.m-txt-R {
	text-align:  right;
}

.m-txt-strong {
	font-weight: 700;
}



/****************************************************************************
 	タイトル
****************************************************************************/
.m-ttl-L {
	text-align: center;
	font-weight: 700;
	letter-spacing: 1px;
	line-height: 1.5;
	font-size: 1.6rem;
	margin-bottom: 1.5rem;
	position: relative;
}
.m-ttl-L:after {
	position: absolute;
	left: 50%;
	bottom: -.6rem;
	transform: translate(-50%, 0);
	display: block;
	content:"";
	width: 100px;
	height: 5.9px;
	background: url("../img/common/ttl_dot.webp") no-repeat 0 0;
	background-size: contain;
}
.m-ttl-L.left {
	text-align: left;
}
.m-ttl-L.left:after {
	left: 0;
	transform: translate(0, 0);
}
@media (min-width:768px) {
	.m-ttl-L {
		letter-spacing: 1px;
		line-height: 1.5;
		font-size: 2.1rem;
		margin-bottom: 2rem;
	}
	.m-ttl-L:after {
		bottom: -1rem;
		width: 156px;
		height: 9.5px;
	}
}
@media (min-width:1024px) {
	.m-ttl-L {
		letter-spacing: 3px;
		font-size: 2.7rem;
		margin-bottom: 2.5rem;
	}
}


/****************************************************************************
 	ボタン
****************************************************************************/

a.m-btn {
	position: relative;
	display: block;
	max-width: 100%;
	width: 14rem;
	padding: 16px 3px;
	border-radius: 50px;
	text-align: center;
	text-decoration: none;
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1.4;
	letter-spacing: 1px;
	margin-left: auto;
	margin-right: auto;
	background-color: #FE958C;
	color: #fff;
	transition: 0.25s ease-in-out;
	-moz-transition: 0.25s ease-in-out;
	-webkit-transition: 0.25s ease-in-out;
	-o-transition: 0.25s eease-in-out;
}
a.m-btn:hover {
	opacity: .8;
}
@media (min-width: 1024px) {
	a.m-btn {
		width: 18rem;
		max-width: 100%;
		padding: 20px 3px;
		font-size: 1.2rem;
	}
}


/****************************************************************************
 	topic-path
****************************************************************************/
.m-topic-path-sec {
	margin-right: 1rem;
	line-height: 1.4;
	text-align: right;
	font-size: .75rem;
}
.m-topic-path-sec li {
	display: inline;
	letter-spacing: 0;
	font-weight: 400;
}
.m-topic-path-sec li a {
	font-weight: 400;
	position: relative;
	padding-right: 1.2rem;
}
.m-topic-path-sec li a:hover {
	opacity: .7;
}
.m-topic-path-sec li a:after {
	content: "/";
	position: absolute;
	top: 0;
	right: 0;
	margin: auto;
	vertical-align: middle;
	width: 1rem;
	height: 1rem;
}
@media (min-width: 1024px) {
	.m-topic-path-sec {
		margin-right: 3rem;
		font-size: .85rem;
	}
}

/****************************************************************************
 	table
****************************************************************************/
table {
	word-break: break-all;
	word-wrap: break-word;
	width: 100%;
}

/****************************************************************************
    margin top
****************************************************************************/

/*   XXSサイズ
---------------------*/
.m-mt-XXS {
	margin-top: .5rem;
}

/*   XSサイズ
---------------------*/
.m-mt-XS {
	margin-top: 1rem;
}


/*   Sサイズ
---------------------*/
.m-mt-S {
	margin-top: 2rem;
}


/*   Mサイズ
---------------------*/
.m-mt-M {
	margin-top: 3rem;
}

/*   Lサイズ
---------------------*/
.m-mt-L {
	margin-top: 4rem;
}


/*   XLサイズ
---------------------*/
.m-mt-XL {
	margin-top: 5rem;
}

