/* CSS Document */

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	background: transparent;
	border: 0;
	font-family: "Noto Sans JP", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 100%;
	font-weight: 500;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

dl,
dt,
dd,
ol,
ul,
li {
	list-style: none;
}

body {
	line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

a {
	background: transparent;
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

hr {
	border: 0;
	border-top: 1px solid #cccccc;
	display: block;
	height: 1px;
	margin: 1em 0;
	padding: 0;
}

input,
select {
	vertical-align: middle;
}

*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	color: #333;
	font-size: 62.5%;
	height: auto;
	line-height: 1.6em;
	margin: 0px;
	padding: 0px;
	text-align: left;
	width: auto;
}

img {
	border: 0;
	vertical-align: top;
}

a {
	color: #333;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

a:link {
	color: #0458a9;
	text-decoration: none;
}

a:visited {
	color: #0458a9;
	text-decoration: underline;
}

a:hover {
	color: #0458a9;
	text-decoration: none;
}

a:active {
	color: #0458a9;
	text-decoration: none;
}

a::before,
a::after {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
}

a,
a::before,
a::after {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

a img:hover,
a:hover {
	filter: alpha(opacity=60);
	opacity: 0.6;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

em,
strong {
	font-style: normal;
	font-weight: bold;
}

.clearfix:after {
	clear: both;
	content: ".";
	display: block;
	font-size: 0;
	height: 0;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
}

/* Hides from IE Mac \*/

* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}

/* End Hack */

#loading {
	left: 50%;
	margin-left: -30px;
	margin-top: -30px;
	position: absolute;
	top: 50%;
	width: 60px;
}

#loader-bg {
	background: #fff;
	height: 100%;
	left: 0px;
	position: fixed;
	top: 0px;
	width: 100%;
	z-index: 9999;
}

.poppins {
	font-family: "Poppins", sans-serif;
}

* {
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
}

body {
	color: #000;
	font-family: "Noto Sans JP", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 1.1vw;
	font-weight: 500;
	height: auto;
	line-height: 1.8em;
	margin: 0;
	max-width: 100%;
	overflow-x: hidden;
	padding: 0;
	text-align: center;
	width: auto;
}

img {
	height: auto;
	max-width: 100%;
}

.SP {
	display: none;
}

#container {
	background: url("../img/common/bg.png") repeat center top;
	overflow-x: hidden;
	width: 100%;
}

.wrap {
	margin: 0 auto;
	width: 90%; /*max-width: 1240px;*/
}

.wrap2 {
	margin: 0 auto;
	width: 76%; /*max-width: 1240px;*/
}

.flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

#header {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	padding: 2em 3vw 2em 6vw;
	position: relative;
	width: 100%;
}

#hmenu {
	display: none;
}

#header #logo {
	text-align: left;
	width: 20%;
}

#gnav {
	width: 70%;
}

#gnav ul {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	    -ms-flex-pack: end;
	        justify-content: flex-end; /* 縦方向中央揃え（Safari用） */
}

#gnav ul li {
	border-left: solid 1px #000000;
	line-height: 1em;
	margin-left: 1.5em;
	padding-left: 1.5em;
}

#gnav ul li:nth-child(1) {
	border: none;
	margin: 0;
	padding: 0;
}

#gnav ul li a {
	color: #000;
	font-weight: 700;
}

#gnav ul li.hbtn {
	border: none;
	padding: 0;
}

#gnav ul li.hbtn a {
	background: #d9002b;
	border-radius: 100px;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	color: #fff;
	display: inline-block;
	font-size: 1.1em;
	padding: 1em 2em;
}

/*--header end-------------------------------------------------------*/

/*--content-------------------------------------------------------*/

#content {
	clear: both;
	height: auto;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

/*--main content end-------------------------------------------------------*/

/*--footer-------------------------------------------------------*/

#koteibtn {
	display: none;
	position: fixed;
	right: 0;
	text-align: right;
	top: 45%;
	width: 3.7em;
	z-index: 3;
}

#footer {
	background: #000000;
	color: #fff;
	padding: 3vw 0;
	text-align: center;
	width: 100%;
}

#footer .top_footer_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin: auto;
	max-width: 600px;
	padding: 20px 15px 40px;
}

#footer .top_footer_list li {
	display: inline-block;
	font-size: 12px;
}

#footer .top_footer_list li a {
	color: #fff;
	text-decoration: underline;
}

#copy address {
	font-size: 0.9em;
	font-style: normal;
}

/*--footer end-------------------------------------------------------*/

.red {
	color: #b11011 !important;
}

.orange {
	color: #ff6600 !important;
}

.green {
	color: #85be42 !important;
}

.pink {
	color: #ff557d !important;
}

.blue {
	color: #002063 !important;
}

.Left {
	float: left !important;
}

.Right {
	float: right !important;
}

.clear {
	clear: both;
}

.mp0 {
	margin: 0 !important;
	padding: 0 !important;
}

.mR0 {
	margin-right: 0 !important;
}

.mL0 {
	margin-left: 0 !important;
}

.mL10 {
	margin-left: 10px !important;
}

.mL15 {
	margin-left: 15px !important;
}

.mB0 {
	margin-bottom: 0 !important;
}

.mB2 {
	margin-bottom: 2px !important;
}

.mB5 {
	margin-bottom: 5px !important;
}

.mB10 {
	margin-bottom: 10px !important;
}

.mB15 {
	margin-bottom: 15px !important;
}

.mB20 {
	margin-bottom: 20px !important;
}

.mB25 {
	margin-bottom: 25px !important;
}

.mB30 {
	margin-bottom: 30px !important;
}

.m0auto {
	margin: 0 auto;
}

.mT0 {
	margin-top: 0 !important;
}

.mT-5 {
	margin-top: -5px !important;
}

.mT-10 {
	margin-top: -10px !important;
}

.mT-15 {
	margin-top: -15px !important;
}

.mT5 {
	margin-top: 5px !important;
}

.mT10 {
	margin-top: 10px !important;
}

.mT15 {
	margin-top: 15px !important;
}

.mT20 {
	margin-top: 20px !important;
}

.mT30 {
	margin-top: 30px !important;
}

.mR10 {
	margin-right: 10px !important;
}

.mLR15 {
	margin-left: 15px !important;
	margin-right: 15px !important;
}

.pB0 {
	padding-bottom: 0 !important;
}

.pB10 {
	padding-bottom: 10px !important;
}

.pB15 {
	padding-bottom: 15px !important;
}

.pB20 {
	padding-bottom: 20px !important;
}

.pB25 {
	padding-bottom: 25px !important;
}

.pB30 {
	padding-bottom: 30px !important;
}

.pB35 {
	padding-bottom: 35px !important;
}

.pB40 {
	padding-bottom: 40px !important;
}

.pT0 {
	padding-top: 0 !important;
}

.pT5 {
	padding-top: 5px !important;
}

.pT10 {
	padding-top: 10px !important;
}

.pT15 {
	padding-top: 15px !important;
}

.pT20 {
	padding-top: 20px !important;
}

.pT30 {
	padding-top: 30px !important;
}

.pT40 {
	padding-top: 40px !important;
}

.pTB10 {
	padding-bottom: 15px;
	padding-top: 15px;
}

.pTB20 {
	padding-bottom: 20px;
	padding-top: 20px;
}

.pL5 {
	padding-left: 5px !important;
}

.pL10 {
	padding-left: 10px !important;
}

.pL15 {
	padding-left: 15px !important;
}

.pL20 {
	padding-left: 20px !important;
}

.pL30 {
	padding-left: 30px !important;
}

.pR10 {
	padding-right: 10px !important;
}

.pR20 {
	padding-right: 20px !important;
}

.pmB0 {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.pL1em {
	padding-left: 1em !important;
}

.bordernone {
	border: 0 !important;
}

.bold {
	font-weight: bold;
}

.mini {
	font-size: 0.9em !important;
}

.smoll {
	font-size: 0.8em !important;
}

.alignC {
	text-align: center !important;
}

.alignL {
	text-align: left !important;
}

.alignR {
	text-align: right !important;
}

.big1 {
	font-size: 1.3em !important;
}

.big2 {
	font-size: 1.4em !important;
	line-height: 1.4em;
}

.big3 {
	font-size: 2em !important;
	line-height: 1.4em;
}

.bgnone {
	background: none !important;
}

/* TOP  */

#mv {
	background: url("../img/main_bg.jpg") no-repeat center top;
	background-size: cover;
	color: #fff;
	padding: 4vw 0;
	position: relative;
	text-align: center;
}

#mv .txt {
	margin: 0 auto;
	width: 45%;
}

#mv .txt h2 {
	font-size: 1.7em;
	font-weight: 700;
	line-height: 2em;
	padding-bottom: 1em;
}

#mv .txt h2 em {
	font-size: 3.2em;
	font-weight: 800;
	letter-spacing: -0.08em;
	line-height: 1.3em;
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
}

#mv .txt p {
	margin: 0 auto 3em;
	width: 90%;
}

#mv .txt .btn {
	margin: 0 auto;
	width: 90%;
}

#mv .txt .btn a {
	background: #d9002b url("../img/common/arrow1.png") no-repeat 95% center;
	background-size: 11px auto;
	border-radius: 100px;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	color: #fff;
	display: block;
	font-size: 1.3em;
	font-weight: 700;
	padding: 1em 2em;
}

#mv .txt2 {
	font-size: 0.8em;
	margin: 0 auto;
	text-align: right;
	width: 90%;
}

#mv .sc {
	bottom: 0;
	position: absolute;
	right: 2em;
	width: 1.2em;
}

.toppa {
	background: url("../img/toppa_bg.png") repeat-x center center;
	background-size: auto 70%;
	padding: 4vw 0;
}

.toppa .txt {
	margin: 0 auto;
	padding: 2vw 0;
	text-align: center;
	width: 60%;
}

.toppa .txt2 {
	font-size: 0.8em;
	text-align: right;
	width: 90%;
}

.toppa .slick-slide {
	margin: 0 0.29vw;
}

.tkouza {
	padding-bottom: 6vw;
}

.tkouza h2 {
	background: url("../img/ttl_bg.png") repeat center top;
	background-size: cover;
	color: #fff;
	font-size: 1.7em;
	font-weight: 700;
	line-height: 2.5em;
	margin-bottom: 6vw;
	padding: 2em 0;
	text-align: center;
}

.tkouza h2 em {
	font-size: 1.3em;
}

.tkouza h2 span {
	background: url("../img/ttl_maru.png") no-repeat center top;
	background-size: 0.2em auto;
	font-weight: 700;
	padding-top: 0.1em;
}

.tkouza h2 strong {
	color: #ffff00;
	font-size: 2.2em;
	font-weight: 700;
}

.tkouza ul {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
}

.tkouza ul li {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center; /* 縦方向中央揃え（Safari用） */
	width: 26vw;
}

.tkouza ul li .box {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	background: url("../img/kouza1.png") no-repeat center center;
	background-size: contain;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	font-size: 1.6em;
	font-weight: 700;
	height: 26vw;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center; /* 縦方向中央揃え（Safari用） */
	line-height: 2em;
	text-align: center;
	width: 100%;
}

.tkouza ul li:nth-child(2) .box {
	background: url("../img/kouza2.png") no-repeat center center;
	background-size: contain;
}

.tkouza ul li:nth-child(3) .box {
	background: url("../img/kouza3.png") no-repeat center center;
	background-size: contain;
}

.tkouza ul li .box div {
	display: inline-block;
}

.tkouza ul li .box div span {
	font-size: 0.6em;
}

.tkouza ul li .box div em {
	color: #ffff00;
	font-size: 1.4em;
}

.tkouza ul li p {
	font-size: 0.7em;
	line-height: 1.4em;
	padding-top: 1em;
}

.btnbox {
	margin: 0 auto;
	text-align: center;
	width: 27vw;
}

.btnbox h3 {
	font-size: 1.5em;
	font-weight: 700;
	padding-bottom: 0.7em;
}

.btn1 a {
	background: #d9002b url("../img/common/arrow1.png") no-repeat 95% center;
	background-size: 11px auto;
	border-radius: 100px;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	color: #fff;
	display: block;
	font-size: 1.2em;
	font-weight: 700;
	padding: 1em 2em;
}

.ttl1 {
	background: url("../img/toppa_bg.png") repeat left top;
	background-size: cover;
	color: #fff;
	font-size: 1.8em;
	font-weight: 700;
	line-height: 1.8em;
	padding: 2em 0 2.1em;
	text-align: center;
}

.ttl1 em {
	font-size: 1.6em;
}

.tshikaku {
	padding-bottom: 4vw;
}

.tshikaku ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding-bottom: 1em;
}

.tshikaku ul li {
	width: 33.3333333333%;
}

.tshikaku ul li .txt {
	background: #fff;
	margin: 0 auto;
	padding: 1.5em;
	position: relative;
	top: -4vw;
	width: 80%;
}

.tshikaku ul li .txt dl {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	padding-bottom: 1em;
}

.tshikaku ul li .txt dl dt {
	width: 28%;
}

.tshikaku ul li .txt dl dd {
	font-size: 0.9em;
	letter-spacing: -0.05em;
	line-height: 1.6em;
	text-align: left;
	width: 67%;
}

.tshikaku ul li .txt dl dd h3 {
	padding-bottom: 0.6em;
}

.tshikaku ul li .txt dl dd h3 img {
	height: 1.6em;
}

.tshikaku ul li .txt .btn1 a {
	font-size: 1em;
	margin: 0 auto;
	padding: 0.7em;
	width: 80%;
}

.cta {
	background: url(../img/common/cta_bg.png) no-repeat center top;
	background-size: 100% auto;
	margin-bottom: 4vw;
	padding: 9vw 0 6vw;
	text-align: center;
}

.cta p {
	color: #fff;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 1.4em;
	padding-bottom: 1em;
}

.cta h2 {
	color: #fff;
	font-size: 2.2em;
	font-weight: bold;
	padding-bottom: 2em;
}

.cta h2 em {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, #b22430));
	background: linear-gradient(transparent 75%, #b22430 75%);
	font-size: 1.5em;
}

.cta .btn1 {
	margin: 0 auto;
	width: 27vw;
}

.treason {
	padding-bottom: 4vw;
}

.treason ol {
	padding-bottom: 2vw;
	padding-top: 5vw;
}

.treason ol li {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	margin-bottom: 4vw;
}

.treason ol li .txt {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	width: 53%;
}

.treason ol li .txt .num {
	background: #1a4e7f;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-size: 1.1em;
	padding: 1em 1em;
	text-align: left;
	width: 6.6em;
}

.treason ol li .txt .num span {
	font-family: "Poppins", sans-serif;
	font-size: 2em;
	font-weight: 600;
	padding-left: 0.4em;
	vertical-align: middle;
}

.treason ol li .txt .box {
	text-align: left;
	width: calc(100% - 10em);
}

.treason ol li .txt .box h3 {
	font-size: 1.6em;
	font-weight: 700;
	line-height: 1.6em;
}

.treason ol li .txt .box h3 span {
	font-size: 0.5em;
}

.treason ol li .txt .box p {
	font-size: 0.9em;
	line-height: 1.6em;
	padding-top: 1em;
}

.treason ol li .pic {
	width: 47%;
}

.treason {
	padding-bottom: 6vw;
}

.treason .box1 {
	background: url("../img/searvice_bg.jpg") no-repeat center top;
	background-size: cover;
	padding: 9vw 4vw;
}

.treason .box1 div {
	margin-left: auto;
	text-align: center;
	width: 48%;
}

.treason .box1 div h3 {
	font-size: 1.8em;
	font-style: italic;
	font-weight: 700;
	line-height: 1.9em;
}

.treason .box1 div h3 em {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, #ffff00));
	background: linear-gradient(transparent 75%, #ffff00 75%);
	font-style: italic;
}

.treason .box1 div h3 span {
	font-size: 0.6em;
	position: relative;
	top: -0.6em;
}

.treason .box1 div p {
	font-size: 0.9em;
	padding-top: 1.5em;
}

.treason ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 6vw 0 3vw;
}

.treason ul li {
	background: url("../img/check.png") no-repeat left center;
	background-size: 1.4em auto;
	font-size: 1.2em;
	font-weight: 700;
	margin: 0 1%;
	padding-left: 2em;
}

.tkaiketu {
	padding-bottom: 6vw;
}

.tkaiketu .wrap {
	padding-top: 4vw;
}

.tkaiketu .box {
	background: #fff;
	margin-bottom: 4vw;
	padding: 3vw 3vw;
	text-align: center;
}

.tkaiketu .box h3 {
	margin: 0 auto 1em;
	width: 70%;
}

.tkaiketu .box p {
	font-size: 1.4em;
	font-weight: 700;
	padding: 0;
}

.tkaiketu .box .logos {
	margin: 4% auto;
	max-width: 70%;
}

/* 講座一覧 */

.pagettl {
	background: url("../img/course/main_bg.jpg") no-repeat center top;
	background-size: cover;
	color: #fff;
	margin-bottom: 6vw;
	padding: 4.5vw 0 5vw;
	text-align: center;
}

.pagettl h1 {
	font-size: 3em;
	font-weight: 800;
	line-height: 1.3em;
	margin-bottom: 0.6em;
	padding-bottom: 0.7em;
	position: relative;
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
}

.pagettl h1::after {
	background: #fff;
	bottom: 0;
	content: "";
	height: 2px;
	left: calc(50% - 1.25em);
	position: absolute;
	width: 2.5em;
}

.pagettl p {
	font-size: 1.4em;
	font-weight: 700;
	line-height: 1.6em;
}

.course1 {
	padding-bottom: 7vw;
}

.course1 .box {
	background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 4vw;
}

.course1 .box .pic {
	width: 50%;
}

.course1 .box .txt {
	padding: 3em;
	text-align: left;
	width: 50%;
}

.course1 .box .list {
	border-top: 2px solid #000;
	margin-top: 2vw;
	padding-top: 3vw;
}

.course1 .box2 .pic {
	-webkit-box-ordinal-group: 3;
	-webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
}

.course1 .box2 .txt {
	-webkit-box-ordinal-group: 2;
	-webkit-order: 1;
	    -ms-flex-order: 1;
	        order: 1;
}

.course1 .box .txt dl {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	padding-bottom: 1em;
}

.course1 .box .txt dl dt {
	width: 6em;
}

.course1 .box .txt dl dd {
	font-size: 1.3em;
	font-weight: bold;
	width: calc(100% - 6em);
}

.course1 .box .txt dl dd h3 {
	font-family: "Poppins", sans-serif;
	font-size: 2em;
	font-weight: 600;
	padding-bottom: 0.2em;
}

.course1 .box .txt dl dd p {
	font-weight: bold;
}

.course1 .box .txt .tags {
	padding: 1em 0;
}

.course1 .box .txt .tags a {
	background: #ffff00;
	color: #111;
	display: inline-block;
	font-size: 0.9em;
	margin: 0 0.5em 0.5em 0;
	padding: 0 0.6em;
}

.course1 .box .txt ul li {
	background: url("../img/check.png") no-repeat left 0.4em;
	background-size: 1.5em auto;
	font-size: 1.3em;
	font-weight: 700;
	line-height: 1.5em;
	padding: 0.4em 0;
	padding-left: 2em;
}

#fnav {
	margin-top: -6vw;
}

#fnav ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

#fnav ul li {
	width: 33.3333333333%;
}

#fnav ul li a {
	background: #fff;
	background-size: 1.4em auto;
	border-right: solid 1px #cccccc;
	color: #000000;
	display: block;
	font-size: 1.5em;
	font-weight: 700;
	padding: 4vw;
	text-align: center;
}

#fnav ul li a span {
	background: url("../img/common/arrow2.png") no-repeat right center;
	background-size: 1.4em auto;
	font-weight: 700;
	padding-right: 2em;
}

/* 選ばれる理由 */

.page-reason .pagettl {
	background: url("../img/reason/main_bg.jpg") no-repeat center top;
	background-size: cover;
}

.reason1 .box {
	background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 5vw;
}

.reason1 .box .txt {
	padding: 2em;
	text-align: left;
	width: 65%;
}

.reason1 .box .txt .midashi {
	background: #1a4e7f;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	margin-bottom: -2.5vw;
	padding: 1em;
	position: relative;
	top: -4vw;
}

.reason1 .box .txt .midashi .num {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	border-right: solid 1px #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap; /* 縦方向中央揃え（Safari用） */
	font-family: "Poppins", sans-serif;
	width: 6em;
}

.reason1 .box .txt .midashi .num span {
	font-family: "Poppins", sans-serif;
	font-size: 2em;
	font-weight: 600;
	padding-left: 0.3em;
}

.reason1 .box .txt .midashi h2 {
	font-size: 1.4em;
	font-weight: 700;
	padding: 0.5em 1em;
}

.reason1 .box .txt p {
	padding-left: 1em;
}

.reason1 .box .pic {
	width: 35%;
}

.reason2 h2 {
	background: #000000;
	color: #fff;
	font-size: 2.3em;
	font-weight: 700;
	line-height: 1.1em;
	padding: 0.5em;
	text-align: center;
}

.reason2 .box {
	background: #fff;
	margin-bottom: 6vw;
	padding: 2.5em 4em;
}

.reason2 .box h3 {
	font-size: 1.7em;
	font-weight: 700;
	margin-bottom: 1.5em;
	position: relative;
	z-index: 1;
}

.reason2 .box h3::before {
	background: #000;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: 50%;
	width: 100%;
	z-index: 0;
}

.reason2 .box h3 span {
	background: #fff;
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-weight: bold;
	padding: 0 0.5em;
	position: relative;
	z-index: 2;
}

.reason2 .box .pic {
	margin: 0 auto 2em;
	width: 90%;
}

.reason2 .box p {
	font-size: 1.1em;
}

/* キャリアサポート */

.page-support .pagettl {
	background: url("../img/support/main_bg.jpg") no-repeat center top;
	background-size: cover;
}

.support1 {
	background: url("../img/toppa_bg.png") repeat left top;
	background-size: cover;
	margin-bottom: 6vw;
}

.support1 ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding-bottom: 5vw;
}

.support1 ul li {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	background: #eaff00;
	border: solid 3px #fff;
	border-radius: 25vw;
	color: #000;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	height: 18vw;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center; /* 縦方向中央揃え（Safari用） */
	margin: 0 2vw;
	text-align: center;
	width: 18vw;
}

.support1 ul li span {
	border-bottom: solid 2px #000;
	border-top: solid 2px #000;
	display: block;
	font-size: 2.1em;
	font-weight: 700;
	line-height: 1.3em;
	margin: 0 auto;
	padding: 0.3em 0;
	width: 68%;
}

.support2 {
	padding: 0 0 4vw;
}

.support2 h2 {
	font-size: 1.7em;
	font-weight: 700;
	line-height: 2em;
	margin-bottom: 4vw;
	text-align: center;
}

.support2 h2 em {
	font-size: 1.9em;
	font-weight: 700;
}

.plink {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding-bottom: 4vw;
}

.plink li {
	background: #004f80;
	border-radius: 50vw;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	color: #fff;
	font-size: 1.3em;
	font-weight: 700;
	margin-bottom: 1.5em;
	text-align: left;
	width: 31%;
}

.plink li a {
	border-radius: 50vw;
	color: #fff;
	display: block;
	font-weight: 700;
	padding: 1.3em 1em 1.3em 4.5em;
}

.plink li:nth-child(1) a {
	background: url("../img/support/ico1.png") no-repeat 0.5em center;
	background-size: 3em auto;
}

.plink li:nth-child(2) a {
	background: url("../img/support/ico2.png") no-repeat 0.5em center;
	background-size: 3em auto;
}

.plink li:nth-child(3) a {
	background: url("../img/support/ico3.png") no-repeat 0.5em center;
	background-size: 3em auto;
}

.plink li:nth-child(4) a {
	background: url("../img/support/ico4.png") no-repeat 0.5em center;
	background-size: 3em auto;
}

.plink li:nth-child(5) a {
	background: url("../img/support/ico5.png") no-repeat 0.5em center;
	background-size: 3em auto;
}

.plink li:nth-child(6) a {
	background: url("../img/support/ico6.png") no-repeat 0.5em center;
	background-size: 3em auto;
}

.support2 .box {
	background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 3vw;
}

.support2 .box .pic {
	width: 37%;
}

.support2 .box .pic img {
	width: 100%;
}

.support2 .box .txt {
	padding: 2em 2.3em;
	text-align: left;
	width: 63%;
}

.support2 .box .txt p {
	font-size: 0.95em;
}

.support2 .box .txt h3 {
	font-size: 1.8em;
	font-weight: 700;
	line-height: 1.3em;
	margin-bottom: 0.5em;
	padding: 0.3em 0 0.5em 2.5em;
}

.support2 .box#support1 .txt h3 {
	background: url("../img/support/ico1.png") no-repeat left top;
	background-size: 2em auto;
}

.support2 .box#support2 .txt h3 {
	background: url("../img/support/ico2.png") no-repeat left top;
	background-size: 2em auto;
}

.support2 .box#support3 .txt h3 {
	background: url("../img/support/ico3.png") no-repeat left top;
	background-size: 2em auto;
}

.support2 .box#support4 .txt h3 {
	background: url("../img/support/ico4.png") no-repeat left top;
	background-size: 2em auto;
}

.support2 .box#support5 .txt h3 {
	background: url("../img/support/ico5.png") no-repeat left top;
	background-size: 2em auto;
}

.support2 .box#support6 .txt h3 {
	background: url("../img/support/ico6.png") no-repeat left top;
	background-size: 2em auto;
}

/* 無料カウンセリング */

.page-inquiry .pagettl {
	background: url("../img/inquiry/main_bg.jpg") no-repeat center top;
	background-size: cover;
}

.page-inquiry {
	margin-bottom: -6.2vw !important;
}

.page-inquiry .pagettl p {
	font-size: 1.6em;
}

.pagettl .pic {
	margin: 0 auto;
	padding: 3vw 0;
	width: 30%;
}

.pagettl .txt2 {
	font-size: 0.8em;
	line-height: 1.5em;
	margin: 0 auto;
	text-align: right;
	width: 90%;
}

.inquiry1 {
	padding: 0 0 4vw;
}

.ttl2 {
	font-size: 1.6em;
	font-weight: 700;
	line-height: 1.8em;
	padding-bottom: 2vw;
	text-align: center;
}

.ttl2 em {
	font-size: 1.8em;
}

.inquiry1 .txt1 {
	font-size: 1.05em;
	margin: -1vw 0 1vw;
	padding-bottom: 3vw;
	text-align: center;
}

.inquiry1 ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 0 1vw 4vw;
}

.inquiry1 ul li {
	line-height: 1.6em;
	width: 13.5vw;
}

.inquiry1 ul li .ico {
	background: #fff;
	border: solid 0.4em #004f80;
	border-radius: 20vw;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	height: 13.5vw;
	margin-bottom: 0.8em;
	position: relative;
	width: 100%;
}

.inquiry1 ul li .ico span {
	-webkit-transform: translateY(-50%) translateX(-50%);
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(-50%);
}

.inquiry1 ul li:nth-child(2) img {
	width: 70%;
}

.inquiry1 .txt2 {
	font-size: 0.8em;
	line-height: 1.5em;
	margin: 0 auto;
	text-align: right;
	width: 98%;
}

#form {
	background: url("../img/toppa_bg.png") repeat center center;
	padding: 6vw 0;
}

#form .ttl2 {
	color: #fff !important;
}

#form .step {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	margin: 0 auto 3vw;
	position: relative;
	width: 22vw;
	z-index: 1;
}

#form .step::before {
	background: #666;
	content: "";
	height: 0.3em;
	position: absolute;
	top: 45%;
	width: 100%;
	z-index: 0;
}

#form .step li {
	background: #666666;
	border-radius: 20vw;
	color: #fff;
	font-size: 0.8em;
	height: 3.5vw;
	line-height: 3.5vw;
	position: relative;
	width: 3.5vw;
	z-index: 2;
}

#form .step li.act {
	background: #d9002b;
}

#form .form {
	background: #fff;
	padding: 3em 0;
}

#form .form .stepform {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
}

#form .form .stepform .formttl {
	margin-bottom: 2em;
	text-align: center;
	width: 50%;
}

#form .form .stepform .formttl .num {
	background: #d9002b;
	border-radius: 5em;
	color: #fff;
	height: 4.5em;
	line-height: 4.5em;
	margin: 0 auto 1em;
	width: 4.5em;
}

#form .form .stepform .formttl h3 {
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1.5em;
}

#form .form .stepform .formcont {
	margin-bottom: 2em;
	text-align: left;
	width: 50%;
}

#form .form .stepform .formcont ul li {
	padding: 1em 0;
}

#form .form .stepform .formcont input[type=radio] {
	display: none;
}

#form .form .stepform .formcont label {
	background: url("../img/inquiry/radio_off.png") no-repeat left 0.3em;
	background-size: 1em auto;
	cursor: pointer;
	font-size: 1.2em;
	padding-left: 2em;
}

#form .form .stepform .formcont input[type=radio]:checked + label {
	background: url("../img/inquiry/radio_on.png") no-repeat left 0.3em;
	background-size: 1em auto;
}

.stepbtn {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center; /* 縦方向中央揃え（Safari用） */
	width: 100%;
}

.stepbtn .nextbtn {
	background: #d9002b url("../img/common/arrow1.png") no-repeat 92% center;
	background-size: 11px auto;
	border: none;
	border-radius: 100px;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	color: #fff;
	cursor: pointer;
	display: block;
	font-size: 1.2em;
	font-weight: 700;
	max-width: 22vw;
	outline: none;
	padding: 0.7em 2em;
	width: 90%;
}

.faq {
	padding: 5vw 0;
	text-align: left;
}

.faq dl {
	border-bottom: solid 1px rgba(0, 0, 0, 0.1);
	margin: 2vw 0;
}

.faq dl dt {
	border-top: solid 1px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	font-size: 1.3em;
	font-weight: 700;
	padding: 1.5em 0 1.5em 5rem;
	position: relative;
}

.faq dl dt span {
	background: #000;
	border-radius: 100px;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-size: 2rem;
	font-weight: 500;
	height: 1.7em;
	left: 0;
	line-height: 1.7em;
	position: absolute;
	text-align: center;
	top: 1.2em;
	width: 1.7em;
}

.faq dl dt:before {
	-webkit-transform: rotate(90deg);
	background-color: #000;
	bottom: 0;
	content: "";
	display: block;
	height: 1px;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	transform: rotate(90deg);
	-webkit-transition: 0.2s;
	transition: 0.2s;
	width: 1em;
}

.faq dl dt:after {
	background-color: #000;
	bottom: 0;
	content: "";
	display: block;
	height: 1px;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	width: 1em;
}

.faq dl dt.act:before {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

.faq dl dt.act:after {
	background-color: transparent;
}

.faq dl dd {
	display: none;
	font-size: 1.05em;
	padding: 0 0 2em 5rem;
	position: relative;
}

.faq dl dd span {
	background: #000;
	border-radius: 100px;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-size: 2rem;
	font-weight: 500;
	height: 1.7em;
	left: 0;
	line-height: 1.7em;
	position: absolute;
	text-align: center;
	top: 0.2em;
	width: 1.7em;
}

/* トレスクのこだわり */

.page-commitment .pagettl {
	background: url("../img/commitment/main_bg.jpg") no-repeat center top;
	background-size: cover;
}

.commitment1 p {
	font-size: 1.3em;
	font-weight: 700;
	line-height: 1.6em;
	margin-bottom: 1.5em;
	text-align: center;
}

.commitment1 p.pic {
	padding-bottom: 0.5em;
}

.commitment2 {
	padding: 3vw 0;
}

.commitment2 .box {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center; /* 縦方向中央揃え（Safari用） */
	margin-bottom: 4vw;
}

.commitment2 .box.commitment8 {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.commitment2 .box .pic {
	width: 35%;
}

.commitment2 .box2 .pic {
	-webkit-box-ordinal-group: 3;
	-webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
}

.commitment2 .box.commitment8 .pic {
	padding: 4em 2em;
}

.commitment2 .box .txt {
	padding: 1em 2em;
	text-align: left;
	width: 65%;
}

.commitment2 .box2 .txt {
	-webkit-box-ordinal-group: 2;
	-webkit-order: 1;
	    -ms-flex-order: 1;
	        order: 1;
}

.commitment2 .box.commitment8 .txt {
	padding: 2em 2em 0;
}

.commitment2 .box .txt .num {
	background: #e5e5e5;
	display: inline-block;
	margin-bottom: 1em;
	padding: 0 0 0 1em;
	width: auto;
}

.commitment2 .box .txt .num span {
	background: #1a4e7f;
	color: #fff;
	display: inline-block;
	margin-left: 0.7em;
	padding: 1px 0.7em;
}

.commitment2 .box.commitment8 .txt h2 {
	font-size: 1.4em;
	font-weight: 700;
}

.commitment2 .box .txt h2 span {
	border-bottom: solid 0.1em #000000;
	display: inline-block;
	font-size: 1.4em;
	font-weight: 700;
	margin-bottom: 0.7em;
	padding-bottom: 0.5em;
}

.commitment2 .box.commitment8 .txt h2 span {
	border-bottom: solid 0.07em #000000;
	color: #005ba6;
	font-size: 3.1vw;
	line-height: 1.3;
	margin-top: 1vw;
	width: 100%;
}

.commitment2 .box .txt h2 span smoll {
	font-size: 0.5em;
	position: relative;
	top: -0.8em;
}

.commitment2 .box .txt p {
	font-size: 0.9em;
	line-height: 1.6em;
}

.commitment2 .box.commitment8 .txt p.pad-1 {
	padding-top: 2em;
}

.commitment2 .box .txt p .attention {
	font-size: 0.7em;
}

.commitment2 .box .txt p .mini {
	font-size: 0.75em !important;
	line-height: 1.5em;
}

.commitment2 .box .flex {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	font-size: 0.9em;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	-webkit-box-ordinal-group: 4;
	-webkit-order: 3;
	    -ms-flex-order: 3;
	        order: 3;
	padding: 2em 0;
	width: 100%;
}

.commitment2 .box.commitment8 .flex {
	padding: 2em;
}

.commitment2 .box .flex h3 {
	font-size: 1.2em;
	font-weight: 700;
	text-align: center;
	width: 16%;
}

.commitment2 .box .flex .txt1 {
	border-left: solid 1px #000;
	border-right: solid 1px #000;
	padding: 0 3%;
	text-align: left;
	width: 27%;
}

.commitment2 .box .flex .txt1 .bikou {
	font-size: 0.7em;
}

.commitment2 .box .flex .txt2 {
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	    -ms-flex-align: end;
	        align-items: flex-end; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap; /* 縦方向中央揃え（Safari用） */
	padding: 0 3%;
	text-align: left;
	width: 57%;
}

.commitment2 .box .flex h4 {
	font-size: 1.1em;
	font-weight: 700;
	padding-bottom: 0.5em;
}

.commitment2 .box .flex .txt2 h4 {
	width: 100%;
}

.commitment2 .box .flex .txt2 ul {
	width: 47%;
}

.commitment2 .box .flex .txt2 ul:nth-child(3) {
	width: 38%;
}

.commitment2 .box .flex .txt2 p {
	width: 15%;
}

.commitment2 .box .flex .item {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	border: 2px solid #005ba6;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 9vw;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	position: relative;
	width: 12%;
}

.commitment2 .box .flex .item::before {
	border-color: #005ba6 transparent transparent transparent;
	border-style: solid;
	border-width: 3vw 3vw 0 0;
	content: "";
	height: 0;
	left: 0;
	position: absolute;
	top: 0;
}

.commitment2 .box .flex .item p {
	font-size: 1.3em;
}

.commitment2 .box .flex .item .number {
	color: #fff;
	left: 0.5vw;
	position: absolute;
	top: 0;
}

.commitment2 .box .flex .triangle span {
	border-color: transparent transparent transparent #666666;
	border-style: solid;
	border-width: 0.7vw 0 0.7vw 1.3vw;
	display: block;
	height: 0;
	width: 0;
}

.pc-only {
	display: block;
}

.sp-only {
	display: none;
}

.SP {
	display: none !important;
}

.PC {
	display: block;
}

.serif {
	font-family: "Noto Serif JP", serif;
	font-weight: 600;
}

#gnav ul li {
	margin-left: 1em;
	padding-left: 1em;
}

#gnav ul li a {
	font-size: 0.9em;
}

.f-bnr-box {
	display: none;
}

.not-found-sec {
	background-color: #000;
	color: #fff;
	padding: 8vw 0 5vw;
	text-align: center;
}

.not-found-sec h2 {
	font-size: 6.1vw;
	font-weight: bold;
	line-height: 5vw;
	margin: 0 auto;
}

.not-found-sec h2 span {
	display: block;
	font-size: 2.8vw;
}

.not-found-sec h3 {
	font-size: 1.6vw;
	font-weight: bold;
	margin: 0 auto 38px;
}

.not-found-sec p {
	font-size: 1vw;
	margin: 10px auto 38px;
}

.not-found-sec a {
	background-color: #d9002b;
	color: #fff;
	display: block;
	font-size: 12px;
	height: 30px;
	line-height: 28px;
	margin: auto;
	position: relative;
	text-decoration: none;
	width: 158px;
}

.not-found-sec a::after {
	border-bottom: 4px solid transparent;
	border-left: 8px solid #fff;
	border-right: 0 solid transparent;
	border-top: 4px solid transparent;
	bottom: 0;
	content: "";
	height: 0;
	margin: auto;
	position: absolute;
	right: 12px;
	top: 0;
	vertical-align: middle;
	width: 0;
	z-index: 1;
}

.voice-single {
	margin-bottom: 1.0416666667vw;
	padding-top: 5.625vw;
}

.voice-single .breadcrumbs {
	font-size: 0.946969697em;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.2222222222;
	margin-bottom: 1.1805555556vw;
	text-align: right;
}

.voice-single .breadcrumbs a,
.voice-single .breadcrumbs span.current-item {
	color: #000;
}

.voice-single .breadcrumbs span {
	font-size: inherit;
	font-weight: 400;
	line-height: inherit;
}

.voice-single .breadcrumbs a span {
	font-weight: 400;
}

.page-voice-single {
	margin-bottom: 5.6944444444vw;
}

.page-voice-single .ttl4 {
	background-color: #fff;
	border-left: 0.6944444444em solid #004F80;
	margin-bottom: 3.1565656566em;
	padding-block: 1.7045454545em;
	padding-left: 3.5984848485em;
	text-align: left;
}

.page-voice-single .ttl4 h1 {
	font-size: 1.8939393939em;
	letter-spacing: 0.06em;
	line-height: 1.4333333333;
	margin-bottom: 0.3333333333em;
}

.page-voice-single .ttl4 p {
	color: #004F80;
	font-size: 0.946969697em;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.2;
}

.voice-single .wrap2 {
	width: 77%;
}

.voice-single .wrap3 {
	margin: 0 auto;
	padding-top: 19.4444444444vw;
	position: relative;
	width: 70%;
}

.page-voice-single .thumbnail {
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

.page-voice-single .imgwrap {
	aspect-ratio: 690/351;
	display: inline-block;
	overflow: hidden;
	position: relative;
	width: 47.9166666667vw;
}

.page-voice-single .thumbnail .imgwrap img {
	-o-object-fit: cover;
	height: 100%;
	left: 50%;
	object-fit: cover;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	width: 100%;
}

.page-voice-single .box {
	background-color: #fff;
	font-size: 0.946969697em;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.2;
	margin-bottom: 5.0694444444vw;
	padding-block: 1.7333333333em;
	padding-inline: 1.5333333333em;
	position: relative;
	text-align: left;
	width: 41.6666666667vw;
}

.page-voice-single .box::before {
	background-color: #004F80;
	bottom: -0.8333333333vw;
	content: "";
	height: 100%;
	position: absolute;
	right: -0.7638888889vw;
	width: 100%;
	z-index: -1;
}

.page-voice-single .box .grade {
	color: #004F80;
	margin-bottom: 0.6944444444vw;
}

.page-voice-single .box .name {
	color: #004F80;
	font-size: 1.4666666667em;
	font-weight: 500;
	letter-spacing: 0.07em;
	line-height: 1.4545454545;
	margin-bottom: 1.5277777778vw;
}

.page-voice-single .box .description {
	line-height: 1.7333333333;
}

.page-voice-single .content {
	font-size: 0.946969697em;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.7333333333;
	text-align: left;
}

.page-voice-single .content h2 {
	background-color: #fff;
	font-size: 1.4666666667em;
	letter-spacing: 0.07em;
	line-height: 1.4545454545;
	margin-bottom: 2.7777777778vw;
	margin-top: 4.1666666667vw;
	padding-block: 0.8181818182em;
	padding-inline: 1.4090909091em;
}

.page-voice-single .content h3 {
	font-size: 1.2em;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.4444444444;
	margin-bottom: 1.3888888889vw;
	margin-top: 2.0833333333vw;
	padding-left: 2.3333333333em;
	position: relative;
}

.page-voice-single .content h3::before {
	background-color: currentColor;
	content: "";
	display: block;
	height: 1px;
	left: 0;
	position: absolute;
	top: 0.8333333333em;
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
	width: 1.8888888889em;
	z-index: 1;
}

.page-voice-single .content figure {
	margin-block: 4.8611111111vw;
	margin-inline: auto;
	width: 47.2222222222vw;
}

.page-voice-single .content p span[style*="text-decoration: underline"] {
	-webkit-box-decoration-break: clone;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(217, 0, 44, 0.16)));
	background: linear-gradient(to bottom, transparent 60%, rgba(217, 0, 44, 0.16) 60%);
	box-decoration-break: clone;
	color: #004F80;
	font-weight: 700;
	text-decoration: none !important;
}

.page-voice-single .content p + p {
	margin-top: 1.8055555556vw;
}

.page-voice-single .content p + figure {
	margin-top: 6.9444444444vw;
}

.voice-single .ttl3 {
	margin-bottom: 2.5694444444vw;
}

.voice-single .page-voice .grid {
	margin-bottom: 2.7777777778vw;
}

.voice-single .btn1 a {
	background-color: #004F80;
	background-position: 90% center;
	font-size: 1.2626262626em;
	letter-spacing: 0.1em;
	margin-inline: auto;
	max-width: 20.9722222222vw;
	padding-right: 3.5em;
}

.page-voice .pagettl {
	background: url("../img/voice/main_bg.jpg") no-repeat center top;
	background-size: cover;
	margin-bottom: 5vw;
}

.voice {
	margin-bottom: 1.0416666667vw;
}

.page-voice .pagettl h1 {
	letter-spacing: 0.2em;
}

.page-voice .pagettl p {
	letter-spacing: 0.15em;
}

.ttl3 {
	font-size: 2.1464646465em;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.2;
	margin-bottom: 5.4861111111vw;
	padding-bottom: 0;
	text-align: center;
}

.page-voice .wrap2 {
	width: 77%;
}

.page-voice .grid {
	grid-row-gap: 2.0833333333vw;
	grid-column-gap: 2.7777777778vw;
	-moz-column-gap: 2.7777777778vw;
	-webkit-column-gap: 2.7777777778vw;
	        column-gap: 2.7777777778vw;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 5.2083333333vw;
	row-gap: 2.0833333333vw;
}

.page-voice .grid .box {
	background-color: #fff;
	border-radius: 0.6313131313em;
	display: block;
	padding-bottom: 0.7575757576em;
	padding-inline: 0.946969697em;
	padding-top: 1.1363636364em;
	position: relative;
}

.page-voice .grid .box::before {
	-webkit-clip-path: polygon(0% 100%, 100% 100%, 100% 0%);
	background: #004F80;
	bottom: 0.5050505051em;
	clip-path: polygon(0% 100%, 100% 100%, 100% 0%);
	content: "";
	height: 1.0732323232em;
	position: absolute;
	right: 0.6313131313em;
	width: 1.1363636364em;
	z-index: 1;
}

.page-voice .grid .box .pic {
	aspect-ratio: 310/172;
	display: inline-block;
	margin-bottom: 0.4166666667vw;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.page-voice .grid .box .pic img {
	-o-object-fit: cover;
	height: 100%;
	left: 50%;
	object-fit: cover;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	width: 100%;
}

.page-voice .grid .box .pic img:focus {
	opacity: 1;
}

.page-voice .grid .box .txt dl {
	border-style: solid;
	border-width: 1px;
	display: -ms-grid;
	display: grid;
	font-size: 0.8838383838em;
	-ms-grid-columns: fit-content(30%) 1fr;
	grid-template-columns: fit-content(30%) 1fr;
	line-height: 1.4285714286;
	margin-bottom: 0.5555555556vw;
}

.page-voice .grid .box .txt dt {
	color: #fff;
	display: -ms-grid;
	display: grid;
	font-weight: 500;
	padding-block: 0.2142857143em;
	place-items: center;
	text-transform: uppercase;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.page-voice .grid .box .txt dd {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	font-weight: 700;
	padding-block: 0.3571428571em;
	width: 100%;
}

.page-voice .grid .box .txt dl.before {
	border-color: #000;
}

.page-voice .grid .box .txt dl.before .en {
	background-color: #000;
	padding-inline: 0.4285714286em;
}

.page-voice .grid .box .txt dl.before .jp {
	color: #000;
}

.page-voice .grid .box .txt dl.after {
	border-color: #004F80;
	margin-left: 1.8939393939em;
	position: relative;
}

.page-voice .grid .box .txt dl.after .en {
	background-color: #004F80;
	padding-inline: 0.5em;
}

.page-voice .grid .box .txt dl.after .jp {
	color: #004F80;
	font-size: 1.2857142857em;
	padding-block: 0.5em;
}

.page-voice .grid .box .txt dl.after::before {
	background-image: url(../img/voice/box_arrow.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: 1.452020202em;
	left: -0.6313131313em;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-100%, -50%);
	        transform: translate(-100%, -50%);
	width: 1.1363636364em;
}

.page-voice .grid .box .txt h3 {
	color: #000;
	font-size: 0.8838383838em;
	font-weight: 500;
	line-height: 1.4285714286;
	margin-bottom: 0.2777777778vw;
	padding-top: 1.0416666667vw;
	position: relative;
	text-align: left;
}

.page-voice .grid .box .txt h3::before {
	background-color: #004F80;
	content: "";
	display: block;
	height: 1px;
	left: -0.946969697em;
	position: absolute;
	right: -0.946969697em;
	top: 0;
	width: calc(100% + 1.8939393939em);
}

.page-voice .grid .box .txt .name {
	color: #000;
	font-size: 0.7575757576em;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.1666666667;
	text-align: left;
}

.page-voice .pagenav .wp-pagenavi {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.2626262626em;
	gap: 1.8055555556vw;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.page-voice .pagenav a,
.page-voice .pagenav span {
	background-color: #fff;
	border-radius: 999px;
	color: #004F80;
	display: -ms-grid;
	display: grid;
	height: 4.1666666667vw;
	place-items: center;
	width: 4.1666666667vw;
}

.page-voice .pagenav a:focus {
	opacity: 0.6;
}

.page-voice .pagenav span.extend {
	background-color: transparent;
	background-image: url(../img/voice/pagenavi_dot.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 90%;
	border-radius: 0;
	display: block;
}

.page-voice .pagenav span.current {
	background-color: #004F80;
	color: #fff;
}

.u-hidden-pc {
	display: none;
}

.u-hidden-sp {
	display: block;
}

@media (any-hover: hover) {

.page-voice .grid .box .pic img:hover {
	opacity: 1;
}

.page-voice .pagenav a:hover {
	opacity: 0.6;
}

}

@media screen and (max-width: 768px) {

.not-found-sec {
	padding: 12vw 5vw 0;
}

.not-found-sec h2 {
	font-size: 13vw;
	line-height: 10vw;
	margin: 0 auto;
}

.not-found-sec h2 span {
	font-size: 7.5vw;
}

.not-found-sec h3 {
	font-size: 3.8vw;
	font-weight: bold;
	margin: 0 auto 25px;
}

.not-found-sec p {
	font-size: 3.2vw;
}

.not-found-sec a {
	font-size: 12px;
	height: 30px;
	line-height: 28px;
	width: 158px;
}

}

@media screen and (max-width: 756px) {

#footer .top_footer_list li {
	font-size: 11px;
}

}

@media screen and (max-width: 750px) {

.SP {
	display: block !important;
}

.PC {
	display: none !important;
}

.wrap {
	width: 92%;
}

.wrap2 {
	width: 92%;
}

body {
	font-size: 3.4vw;
	max-width: 100%;
	overflow-x: hidden;
	width: 100%;
}

#container {
	overflow-x: hidden;
}

#hmenu {
	background: #000;
	border-radius: 100px;
	display: block;
	height: 45px;
	position: absolute;
	right: 15px;
	text-align: center;
	top: 15px;
	width: 45px;
	z-index: 9999;
}

.menu1,
.menu1 span {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: inline-block;
	margin-left: 13px;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	width: 18px;
}

.menu1 {
	font-size: 11px;
	line-height: 1em;
	position: relative;
}

.menu1 span {
	background-color: #fff;
	height: 2px;
	left: 0;
	position: absolute;
}

.menu1 span:nth-of-type(1) {
	top: 16px;
}

.menu1 span:nth-of-type(2) {
	top: 22px;
}

.menu1 span:nth-of-type(3) {
	top: 28px;
}

.menu1.active span:nth-of-type(1) {
	background-color: #fff;
	-webkit-transform: translateY(6px) rotate(-45deg);
	        transform: translateY(6px) rotate(-45deg);
}

.menu1.active span:nth-of-type(2) {
	opacity: 0;
}

.menu1.active span:nth-of-type(3) {
	background-color: #fff;
	-webkit-transform: translateY(-6px) rotate(45deg);
	        transform: translateY(-6px) rotate(45deg);
}

#header {
	padding: 20px 15px;
	position: relative;
	width: 100%;
}

#header #logo {
	text-align: left;
	width: 170px;
}

#gnav {
	background: #fff;
	display: none;
	height: 100vh;
	overflow-y: auto;
	padding: 15vw 0;
	position: fixed;
	position: fixed;
	right: 0;
	top: 0;
	-webkit-transform: translate(100%);
	        transform: translate(100%);
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	width: 100%;
	z-index: 9998;
}

#gnav.open {
	display: block;
	-webkit-transform: translate(0);
	        transform: translate(0);
}

#gnav ul {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	    -ms-flex-pack: start;
	        justify-content: flex-start; /* 縦方向中央揃え（Safari用） */
}

#gnav ul li {
	border: none;
	border-bottom: solid 1px #000000;
	line-height: 1em;
	margin: 0 auto;
	margin-left: 0;
	padding: 1.5em 0;
	width: 100%;
}

#gnav ul li:nth-child(1) {
	border-bottom: solid 1px #000000;
	margin: 0;
	padding: 1em;
}

#gnav ul li.hbtn {
	border: none;
	padding: 1.5em 0;
}

#gnav ul li.hbtn a {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	display: block;
	font-size: 1.1em;
	margin: 0 auto;
	padding: 1em 2em;
	width: 90%;
}

/*--header end-------------------------------------------------------*/

#koteibtn {
	display: none;
}

.fbtn {
	width: 100%;
}

.fbtn a {
	background: #d92b3a;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	color: #fff;
	display: block;
	font-size: 1.2em;
	font-weight: 700;
	padding: 0.8em 1em;
	text-align: center;
}

#footer {
	padding: 5vw 0;
	width: 100%;
}

/*--content-------------------------------------------------------*/

/* TOP  */

#mv {
	background: url("../img/main_bg_sp.jpg") no-repeat center top;
	background-size: cover;
	padding: 7vw 0;
	text-align: center;
}

#mv .txt {
	margin: 0 auto;
	width: 95%;
}

#mv .txt h2 {
	font-size: 1.1em;
	font-weight: 700;
	line-height: 2em;
	padding-bottom: 1em;
}

#mv .txt h2 em {
	font-size: 3.2em;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3em;
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
}

#mv .txt p {
	margin: 0 auto 1em;
	width: 100%;
}

#mv .txt .btn {
	margin: 0 auto;
	width: 100%;
}

#mv .txt .btn a {
	background: #d9002b url("../img/common/arrow1.png") no-repeat 95% center;
	background-size: 11px auto;
	display: block;
	font-size: 1.1em;
	font-weight: 700;
	padding: 1em 2em;
}

#mv .txt2 {
	font-size: 0.8em;
	line-height: 1.4em;
	margin: 0 auto;
	padding-top: 2em;
	text-align: left;
	width: 96%;
}

#mv .sc {
	display: none;
}

.toppa {
	background: url("../img/toppa_bg.png") repeat-x center center;
	background-size: auto 50%;
	padding: 4vw 0;
}

.toppa .txt {
	margin: 0 auto;
	padding: 3vw 0;
	text-align: center;
	width: 94%;
}

.toppa .txt2 {
	font-size: 0.7em;
	text-align: right;
	width: 96%;
}

.tkouza {
	padding-bottom: 8vw;
}

.tkouza h2 {
	font-size: 1.3em;
	font-weight: 700;
	line-height: 2em;
	margin-bottom: 6vw;
	padding: 1.4em 0;
	text-align: center;
}

.tkouza h2 em {
	font-size: 1.3em;
}

.tkouza h2 strong {
	font-size: 1.6em;
}

.tkouza ul {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	padding-bottom: 5vw;
}

.tkouza ul li {
	width: 43vw;
}

.tkouza ul li:nth-child(1) {
	width: 100%;
}

.tkouza ul li .box {
	font-size: 1.2em;
	font-weight: 700;
	height: 43vw;
	letter-spacing: -0.02em;
	line-height: 1.5em;
	width: 43vw;
}

.tkouza ul li .box div {
	display: inline-block;
}

.tkouza ul li .box div span {
	font-size: 0.6em;
}

.tkouza ul li .box div em {
	font-size: 1.3em;
}

.tkouza .sptxt {
	font-size: 0.8em;
	line-height: 1.5em;
	padding-top: 1em;
	text-align: center;
}

.btnbox {
	margin: 0 auto;
	text-align: center;
	width: 88vw;
}

.btnbox h3 {
	font-size: 1.3em;
	font-weight: 700;
	padding-bottom: 0.7em;
}

.btn1 a {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	font-size: 1.1em;
	font-weight: 700;
	padding: 0.8em 2em;
}

.ttl1 {
	background: url("../img/toppa_bg.png") repeat left top;
	background-size: 1440px auto;
	font-size: 1.2em;
	line-height: 1.8em;
	padding: 1.2em 0 1.4em;
}

.ttl1 em {
	font-size: 1.7em;
}

.tshikaku {
	padding-bottom: 8vw;
}

.tshikaku ul {
	margin: 0 auto;
	padding: 2em 0 1em;
	width: 92%;
}

.tshikaku ul li {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	margin-bottom: 1em;
	position: relative;
	width: 100%;
}

.tshikaku ul li:before {
	border: none;
	border-bottom: solid 6.65em #fff;
	border-right: solid 4em transparent;
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.tshikaku ul li .pic {
	position: relative;
	width: 35%;
}

.tshikaku ul li .txt {
	background: none;
	margin: 0 auto;
	padding: 0.8em 1em 0;
	position: relative;
	top: 0;
	width: 65%;
}

.tshikaku ul li .txt dl {
	display: block;
	padding-bottom: 1em;
}

.tshikaku ul li .txt dl dt {
	float: left;
	width: 12%;
}

.tshikaku ul li .txt dl dd {
	font-size: 0.7em;
	letter-spacing: -0.05em;
	line-height: 1.6em;
	text-align: left;
	width: auto;
}

.tshikaku ul li .txt dl dd h3 {
	padding: 0.4em 0 0.8em 3em;
}

.tshikaku ul li .txt dl dd h3 img {
	height: 1.4em;
}

.tshikaku ul li .txt .btn1 {
	position: absolute;
	right: 0;
	top: 1em;
	width: 15vw;
}

.tshikaku ul li .txt .btn1 a {
	background: #d9002b;
	font-size: 0.9em;
	height: 15vw;
	line-height: 1.3em;
	margin: 0 auto;
	padding: 1em 0;
	width: 100%;
}

.cta {
	background: url(../img/common/cta_bg_sp.jpg) no-repeat center top;
	background-size: 100% auto;
	margin-bottom: 8vw;
	padding: 6vw 0;
	text-align: center;
}

.cta p {
	font-size: 1.2em;
	line-height: 1.6em;
	padding-bottom: 1em;
}

.cta h2 {
	font-size: 1.8em;
	padding-bottom: 7em;
}

.cta h2 em {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, #b22430));
	background: linear-gradient(transparent 75%, #b22430 75%);
	font-size: 1.4em;
}

.cta .btn1 {
	margin: 0 auto;
	width: 88vw;
}

.treason {
	padding-bottom: 4vw;
}

.treason ol {
	padding-bottom: 4vw;
	padding-top: 7vw;
}

.treason ol li {
	margin-bottom: 4vw;
}

.treason ol li .txt {
	display: table;
	-webkit-box-ordinal-group: 3;
	-webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
	width: 100%;
}

.treason ol li .txt .num {
	display: table-cell;
	font-size: 0.9em;
	padding: 1.5em 1em;
	vertical-align: middle;
	width: 6.5em;
}

.treason ol li .txt .box {
	display: table-cell;
	padding: 0.8em 1em;
	text-align: left;
	vertical-align: middle;
}

.treason ol li .txt .box h3 {
	font-size: 1.1em;
	font-weight: 700;
	line-height: 1.6em;
}

.treason ol li .txt .box h3 span {
	font-size: 0.5em;
}

.treason ol li .txt .box p {
	font-size: 0.8em;
	line-height: 1.4em;
	padding-top: 0;
}

.treason ol li .pic {
	width: 100%;
}

.treason {
	padding-bottom: 8vw;
}

.treason .box1 {
	background: url("../img/searvice_bg_sp.jpg") no-repeat left top;
	background-size: cover;
	padding: 5vw 4vw 20vw;
}

.treason .box1 div {
	margin-left: auto;
	text-align: right;
	width: 100%;
}

.treason .box1 div h3 {
	font-size: 1.2em;
	font-style: italic;
	font-weight: 700;
	line-height: 1.6em;
}

.treason .box1 div p {
	font-size: 0.8em;
	padding-top: 0.5em;
}

.treason ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	padding: 4vw 0 3vw;
}

.treason ul li {
	margin: 0 auto;
	margin-bottom: 0.6em;
	padding-left: 2em;
	text-align: left;
	width: 92%;
}

.tkaiketu {
	padding-bottom: 8vw;
}

.tkaiketu .wrap {
	padding-top: 6vw;
}

.tkaiketu .box {
	margin-bottom: 6vw;
	padding: 1em 0;
	text-align: center;
}

.tkaiketu .box h3 {
	margin: 0 auto 1em;
	width: 50%;
}

.tkaiketu .box p {
	font-size: 1.1em;
	padding: 0;
}

.tkaiketu .box .logos {
	max-width: 80%;
}

/* 講座一覧 */

.pagettl {
	background: url("../img/course/main_bg_sp.jpg") no-repeat center top;
	background-size: cover;
	margin-bottom: 8vw;
	padding: 7vw 0 8vw;
	text-align: center;
}

.pagettl h1 {
	font-size: 1.8em;
}

.pagettl h1::after {
	background: #fff;
	bottom: 0;
	content: "";
	height: 2px;
	left: calc(50% - 1.5em);
	position: absolute;
	width: 3em;
}

.pagettl p {
	font-size: 1.1em;
	font-weight: 700;
	line-height: 1.6em;
}

.course1 {
	background: #fff;
	margin: 0 -4.2vw 8vw;
	padding-bottom: 6vw;
}

.course1 .box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 0;
}

.course1 .box .pic {
	height: 65vw;
	overflow: hidden;
	width: 100%;
}

.course1 .box .txt {
	padding: 4vw;
	text-align: left;
	width: 100%;
}

.course1 .box2 .pic {
	-webkit-box-ordinal-group: 2;
	-webkit-order: 1;
	    -ms-flex-order: 1;
	        order: 1;
}

.course1 .box2 .txt {
	-webkit-box-ordinal-group: 3;
	-webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
}

.course1 .box .txt dl dt {
	width: 5em;
}

.course1 .box .txt dl dd {
	font-size: 1.2em;
	font-weight: bold;
	width: calc(100% - 5em);
}

.course1 .box .txt dl dd h3 {
	font-size: 1.7em;
	font-weight: 600;
	padding-bottom: 0.1em;
}

.course1 .box .txt dl dd p {
	font-weight: bold;
}

.course1 .box .txt .tags {
	padding: 1em 0;
}

.course1 .box .txt .tags a {
	margin: 0 0.8em 0.8em 0;
	padding: 0.2em 0.6em;
}

.course1 .box .txt ul li {
	background: url("../img/check.png") no-repeat left center;
	background-size: 1.5em auto;
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.4em;
	padding: 0.4em 0;
	padding-left: 2em;
}

#fnav {
	margin-top: -8vw;
}

#fnav ul li {
	width: 100%;
}

#fnav ul li a {
	border: none;
	border-bottom: solid 1px #cccccc;
	display: block;
	font-size: 1em;
	font-weight: 700;
	padding: 4vw 4vw;
	text-align: left;
}

#fnav ul li a span {
	background: url("../img/common/arrow2.png") no-repeat left center;
	background-size: 1.4em auto;
	padding-left: 2em;
	padding-right: 0;
}

/* 選ばれる理由 */

.page-reason .pagettl {
	background: url("../img/reason/main_bg_sp.jpg") no-repeat center top;
	background-size: cover;
}

.reason1 {
	padding-bottom: 3vw;
}

.reason1 .box {
	margin-bottom: 6vw;
}

.reason1 .box .txt {
	-webkit-box-ordinal-group: 3;
	-webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
	padding: 1em;
	text-align: left;
	width: 100%;
}

.reason1 .box .txt .midashi {
	display: table;
	margin-bottom: -3vw;
	padding: 0.5em 0;
	top: -6vw;
	width: 100%;
}

.reason1 .box .txt .midashi .num {
	display: table-cell;
	text-align: center;
	width: 5em;
}

.reason1 .box .txt .midashi .num span {
	font-family: "Poppins", sans-serif;
	font-size: 2em;
	font-weight: 600;
	padding-left: 0;
}

.reason1 .box .txt .midashi h2 {
	display: table-cell;
	font-size: 1.2em;
	padding: 0 0.6em;
	vertical-align: middle;
}

.reason1 .box .txt p {
	font-size: 0.9em;
	line-height: 1.6em;
	padding-left: 0;
}

.reason1 .box .pic {
	-webkit-box-ordinal-group: 2;
	-webkit-order: 1;
	    -ms-flex-order: 1;
	        order: 1;
	width: 100%;
}

.reason2 .wrap {
	width: 100%;
}

.reason2 h2 {
	font-size: 1.5em;
	line-height: 1.3em;
	padding: 0.5em;
	text-align: center;
}

.reason2 .box {
	margin-bottom: 8vw;
	padding: 1em 1.5em 1.5em;
}

.reason2 .box h3 {
	font-size: 1.2em;
	margin-bottom: 1.5em;
	z-index: 1;
}

.reason2 .box .pic {
	margin: 0 auto 1em;
	width: 100%;
}

.reason2 .box p {
	font-size: 0.9em;
	line-height: 1.5em;
}

/* キャリアサポート */

.page-support .pagettl {
	background: url("../img/support/main_bg_sp.jpg") no-repeat center top;
	background-size: cover;
}

.support1 {
	background: url("../img/toppa_bg.png") repeat left top;
	background-size: 1440px auto;
	margin-bottom: 6vw;
}

.support1 ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 0 4vw 5vw;
}

.support1 ul li {
	border: solid 2px #fff;
	border-radius: 29vw;
	height: 28vw;
	margin: 0;
	text-align: center;
	width: 28vw;
}

.support1 ul li span {
	border-bottom: solid 2px #000;
	border-top: solid 2px #000;
	display: block;
	font-size: 1.1em;
	font-weight: 700;
	line-height: 1.3em;
	margin: 0 auto;
	padding: 0.6em 0;
	width: 70%;
}

.support2 {
	padding: 0 0 4vw;
}

.support2 h2 {
	font-size: 1.2em;
	line-height: 2em;
	margin-bottom: 5vw;
}

.support2 h2 em {
	font-size: 1.9em;
	font-weight: 700;
}

.plink {
	padding-bottom: 5vw;
}

.plink li {
	font-size: 1em;
	font-weight: 700;
	line-height: 1.4em;
	margin-bottom: 0.7em;
	text-align: left;
	width: 48%;
}

.plink li a {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	border-radius: 50vw;
	display: block;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap; /* 縦方向中央揃え（Safari用） */
	min-height: 3.6em;
	padding: 0.4em 0 0.4em 3.8em;
}

.plink li:nth-child(1) a {
	background: url("../img/support/ico1.png") no-repeat 0.3em center;
	background-size: 3em auto;
}

.plink li:nth-child(2) a {
	background: url("../img/support/ico2.png") no-repeat 0.3em center;
	background-size: 3em auto;
}

.plink li:nth-child(3) a {
	background: url("../img/support/ico3.png") no-repeat 0.3em center;
	background-size: 3em auto;
}

.plink li:nth-child(4) a {
	background: url("../img/support/ico4.png") no-repeat 0.3em center;
	background-size: 3em auto;
}

.plink li:nth-child(5) a {
	background: url("../img/support/ico5.png") no-repeat 0.3em center;
	background-size: 3em auto;
}

.plink li:nth-child(6) a {
	background: url("../img/support/ico6.png") no-repeat 0.3em center;
	background-size: 3em auto;
}

.support2 .box {
	margin-bottom: 7vw;
}

.support2 .box .pic {
	width: 100%;
}

.support2 .box .txt {
	padding: 1em;
	text-align: left;
	width: 100%;
}

.support2 .box .txt p {
	font-size: 0.95em;
	line-height: 1.5em;
}

.support2 .box .txt h3 {
	font-size: 1.4em;
	font-weight: 700;
	line-height: 1.3em;
	margin-bottom: 0.5em;
	padding: 0.3em 0 0.5em 2.5em;
}

/* 無料カウンセリング */

.page-inquiry {
	margin-bottom: -8vw !important;
}

.page-inquiry .pagettl {
	background: url("../img/inquiry/main_bg_sp.jpg") no-repeat center top;
	background-size: cover;
}

.page-inquiry .pagettl p {
	font-size: 1.1em;
}

.pagettl .pic {
	margin: 0 auto;
	padding: 3vw 0;
	width: 90%;
}

.pagettl .txt2 {
	font-size: 0.8em;
}

.inquiry1 {
	padding: 4vw 0 8vw;
}

.ttl2 {
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.8em;
	padding-bottom: 5vw;
	text-align: center;
}

.ttl2 em {
	font-size: 1.6em;
}

.inquiry1 .txt1 {
	font-size: 0.8em;
	line-height: 1.6em;
	margin: -1vw 0 1vw;
	padding-bottom: 5vw;
	text-align: center;
}

.inquiry1 ul {
	padding: 0 1vw 6vw;
}

.inquiry1 ul li {
	line-height: 1.6em;
	margin-bottom: 1.8em;
	width: 48%;
}

.inquiry1 ul li .ico {
	border: solid 0.3em #004f80;
	border-radius: 30vw;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	        box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	height: 30vw;
	margin: 0 auto 0.5em;
	width: 30vw;
}

.inquiry1 ul li:nth-child(2) img {
	width: 70%;
}

.inquiry1 .txt2 {
	font-size: 0.9em;
	line-height: 1.5em;
	margin: -30vw 0 0 auto;
	text-align: right;
	width: 40%;
}

#form {
	background: url("../img/toppa_bg.png") repeat center center;
	background-size: 1440px auto;
	padding: 8vw 0;
}

#form .step {
	margin: 0 auto 4vw;
	width: 92%;
	z-index: 1;
}

#form .step::before {
	content: "";
	height: 0.3em;
	position: absolute;
	top: 45%;
	width: 100%;
	z-index: 0;
}

#form .step li {
	border-radius: 20vw;
	font-size: 0.8em;
	height: 13vw;
	line-height: 13vw;
	position: relative;
	width: 13vw;
	z-index: 2;
}

#form .form {
	padding: 1.5em;
}

#form .form .stepform {
	display: block;
}

#form .form .stepform .formttl {
	margin-bottom: 1em;
	text-align: center;
	width: 100%;
}

#form .form .stepform .formttl h3 {
	font-size: 1.3em;
	font-weight: 700;
	line-height: 1.5em;
}

#form .form .stepform .formcont {
	margin-bottom: 1em;
	width: 100%;
}

#form .form .stepform .formcont ul li {
	padding: 0.5em 0;
}

#form .form .stepform .formcont label {
	font-size: 1.1em;
	padding-left: 2em;
}

.stepbtn .nextbtn {
	background: #d9002b url("../img/common/arrow1.png") no-repeat 92% center;
	background-size: 0.5em auto;
	border: none;
	border-radius: 100px;
	display: block;
	font-size: 1.1em;
	font-weight: 700;
	max-width: 100%;
	padding: 0.7em 2em;
	width: 100%;
}

.faq {
	padding: 8vw 0;
}

.faq dl {
	margin: 1vw 0;
}

.faq dl dt {
	border-top: solid 1px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	font-size: 1.1em;
	font-weight: 700;
	padding: 1.5em 2em 1.5em 5rem;
	position: relative;
}

.faq dl dt span {
	border-radius: 100px;
	font-size: 2rem;
	font-weight: 500;
	height: 1.7em;
	left: 0;
	line-height: 1.7em;
	position: absolute;
	text-align: center;
	top: 1.2em;
	width: 1.7em;
}

.faq dl dd {
	display: none;
	font-size: 0.9em;
	padding: 0 0 2em 5rem;
	position: relative;
}

/* トレスクのこだわり */

.page-commitment .pagettl {
	background: url("../img/commitment/main_bg_sp.jpg") no-repeat center top;
	background-size: cover;
}

.commitment1 p {
	font-size: 1.05em;
	text-align: center;
}

.commitment1 p.pic {
	margin: 0 -4vw 0.2em;
	padding-bottom: 0.5em;
}

.commitment2 {
	padding: 3vw 0;
}

.commitment2 .box {
	margin-bottom: 4vw;
}

.commitment2 .box .pic {
	-webkit-box-ordinal-group: 2;
	-webkit-order: 1;
	    -ms-flex-order: 1;
	        order: 1;
	width: 100%;
}

.commitment2 .box2 .pic {
	-webkit-box-ordinal-group: 2;
	-webkit-order: 1;
	    -ms-flex-order: 1;
	        order: 1;
}

.commitment2 .box .pic2 {
	border-bottom: 3px solid #000;
	margin-bottom: 1em;
	padding: 2em;
}

.commitment2 .box .txt {
	-webkit-box-ordinal-group: 3;
	-webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
	padding: 1em;
	text-align: left;
	width: 100%;
}

.commitment2 .box.commitment8 .txt {
	padding: 1em;
}

.commitment2 .box2 .txt {
	-webkit-box-ordinal-group: 3;
	-webkit-order: 2;
	    -ms-flex-order: 2;
	        order: 2;
}

.commitment2 .box .txt .num {
	font-size: 0.9em;
	margin-bottom: 1em;
	padding: 0 0 0 1em;
}

.commitment2 .box .txt h2 span {
	display: block;
	font-size: 1.3em;
	font-weight: 700;
	margin-bottom: 0.7em;
	padding-bottom: 0.5em;
}

.commitment2 .box.commitment8 .txt h2 span {
	border: 0;
	font-size: 1.3em;
	margin-bottom: 0;
	padding-bottom: 0;
}

.commitment2 .box .txt p {
	font-size: 0.9em;
	line-height: 1.6em;
}

.commitment2 .box .txt p.bikou {
	font-size: 0.7em;
	text-align: left;
}

.commitment2 .box .txt p .attention {
	font-size: 0.7em;
}

.commitment2 .box .txt p .mini {
	font-size: 0.8em !important;
}

.commitment2 .box .flex {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center; /* 縦方向中央揃え */
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	font-size: 0.9em;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between; /* 縦方向中央揃え（Safari用） */
	-webkit-box-ordinal-group: 4;
	-webkit-order: 3;
	    -ms-flex-order: 3;
	        order: 3;
	padding: 1em 0;
	width: 100%;
}

.commitment2 .box.commitment8 .flex {
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	padding: 1em;
}

.commitment2 .box .flex .item {
	height: auto;
	width: 100%;
}

.commitment2 .box .flex .item::before {
	display: none;
}

.commitment2 .box .flex .item .number {
	background: #005ba6;
	display: block;
	font-size: 4vw;
	left: auto;
	left: initial;
	line-height: 3;
	position: static;
	position: initial;
	top: auto;
	top: initial;
	width: 13%;
}

.commitment2 .box .flex .item p {
	width: 87%;
}

.commitment2 .box .flex h3 {
	font-size: 1.3em;
	font-weight: 700;
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
	position: relative;
	text-align: center;
	width: 100%;
}

.commitment2 .box .flex h3::after {
	background: #000;
	bottom: 0;
	content: "";
	display: block;
	height: 0.1em;
	left: 34%;
	position: absolute;
	width: 32%;
}

.commitment2 .box .flex .txt1 {
	border: none;
	padding: 0;
	padding-bottom: 1em;
	position: relative;
	text-align: center;
	width: 100%;
}

.commitment2 .box .flex .txt1:after {
	background: #000;
	bottom: 0;
	content: "";
	display: block;
	height: 0.1em;
	left: 34%;
	position: absolute;
	width: 32%;
}

.commitment2 .box .flex .txt2 {
	padding: 1em 0;
	text-align: center;
	width: 100%;
}

.commitment2 .box .flex .txt2 ul {
	width: 100%;
}

.commitment2 .box .flex .txt2 ul:nth-child(3) {
	width: 100%;
}

.commitment2 .box .flex .txt2 p {
	width: 100%;
}

.commitment2 .box .flex .triangle {
	text-align: center;
	width: 100%;
}

.commitment2 .box .flex .triangle span {
	border-color: #666 transparent transparent transparent;
	border-style: solid;
	border-width: 12px 7px 0 8px;
	display: block;
	height: 0;
	margin: 0.6em auto;
	width: 0;
}

.pc-only {
	display: none;
}

.sp-only {
	display: block;
}

.serif {
	font-weight: 400;
}

.voice-single {
	margin-bottom: 10.4vw;
	padding-top: 0;
}

.voice-single .breadcrumbs {
	font-size: 0.6274509804em;
	line-height: 1.25;
}

.page-voice-single {
	margin-bottom: 9.8666666667vw;
}

.page-voice-single .ttl4 {
	border-left-width: 0.862745098em;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	    -ms-flex-direction: column-reverse;
	        flex-direction: column-reverse;
	gap: 0.0784313725em;
	margin-bottom: 4.5333333333vw;
	padding-bottom: 0.6274509804em;
	padding-left: 1.0980392157em;
	padding-top: 0.862745098em;
}

.page-voice-single .ttl4 h1 {
	font-size: 1.568627451em;
	line-height: 1.4;
	margin-bottom: 0;
}

.page-voice-single .ttl4 p {
	font-size: 0.7843137255em;
	line-height: 1.63;
}

.voice-single .wrap2 {
	width: 93%;
}

.voice-single .wrap3 {
	padding-top: 0;
	width: 89%;
}

.page-voice-single .thumbnail {
	margin-bottom: 2.6666666667vw;
	position: relative;
}

.page-voice-single .imgwrap {
	aspect-ratio: 330/178;
	width: 100%;
}

.page-voice-single .box {
	font-size: 0.9411764706em;
	margin-bottom: 9.3333333333vw;
	padding-block: 1em;
	padding-inline: 0.9166666667em;
	width: 88vw;
}

.page-voice-single .box::before {
	bottom: -1.8666666667vw;
	right: -2.9333333333vw;
}

.page-voice-single .box .grade {
	font-size: 0.8333333333em;
	font-weight: 400;
	line-height: 1.2;
	margin-bottom: 0.8vw;
}

.page-voice-single .box .name {
	font-size: 1.25em;
	font-weight: 500;
	line-height: 1.4666666667;
	margin-bottom: 2.4vw;
}

.page-voice-single .box .description {
	font-weight: 400;
	letter-spacing: 0;
}

.page-voice-single .content {
	font-size: 1.0980392157em;
}

.page-voice-single .content h2 {
	font-size: 1.2857142857em;
	letter-spacing: 0.03em;
	line-height: 1.4444444444;
	margin-bottom: 5.3333333333vw;
	margin-top: 8vw;
	padding-block: 0.5555555556em;
	padding-left: 0.8333333333em;
}

.page-voice-single .content h3 {
	font-size: 1.1428571429em;
	letter-spacing: 0.07em;
	margin-bottom: 4vw;
	margin-top: 6.6666666667vw;
}

.page-voice-single .content h3::before {
	top: 0.8125em;
}

.page-voice-single .content figure {
	width: 100%;
}

.page-voice-single .content p {
	letter-spacing: 0.02em;
	line-height: 1.6428571429;
}

.page-voice-single .content p + p {
	margin-top: 6.1333333333vw;
}

.page-voice-single .content p + figure {
	margin-top: 12.5333333333vw;
}

.voice-single .ttl3 {
	margin-bottom: 7.7333333333vw;
}

.voice-single .page-voice .grid {
	margin-bottom: 10.4vw;
}

.voice-single .btn1 a {
	font-size: 1.0980392157em;
	max-width: 88vw;
}

.page-voice .pagettl {
	background-image: url(../img/voice/main_bg_sp.jpg);
	margin-bottom: 1.9607843137em;
}

.voice {
	margin-bottom: 6.6666666667vw;
}

.page-voice .pagettl h1 {
	letter-spacing: 0;
}

.page-voice .pagettl p {
	letter-spacing: 0.05em;
}

.ttl3 {
	font-size: 1.2549019608em;
	margin-bottom: 7.2vw;
}

.page-voice .wrap2 {
	width: 93%;
}

.page-voice .grid {
	gap: 2.6666666667vw;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 11.7333333333vw;
}

.page-voice .grid .box {
	border: 0.5px solid #000;
	padding-inline: 0.7843137255em;
	padding-top: 0.7843137255em;
}

.page-voice .grid .box::before {
	bottom: 0.3921568627em;
	height: 0.862745098em;
	right: 0.5490196078em;
	width: 0.7843137255em;
}

.page-voice .grid .box .pic {
	aspect-ratio: 150/100;
}

.page-voice .grid .box .txt dl {
	border-width: 0.5px;
	font-size: 0.5490196078em;
	margin-bottom: 1.0666666667vw;
}

.page-voice .grid .box .txt dt {
	padding-block: 0.25em;
}

.page-voice .grid .box .txt dd {
	padding-block: 0.125em;
}

.page-voice .grid .box .txt dl.before .en {
	padding-inline: 0.4285714286em;
}

.page-voice .grid .box .txt dl.before .jp {
	font-size: 1.1428571429em;
}

.page-voice .grid .box .txt dl.after {
	margin-bottom: 2.6666666667vw;
	margin-left: 1.7142857143em;
}

.page-voice .grid .box .txt dl.after .en {
	padding-inline: 0.4285714286em;
}

.page-voice .grid .box .txt dl.after .jp {
	font-size: 1.4285714286em;
	padding-block: 0.3em;
}

.page-voice .grid .box .txt dl.after::before {
	height: 3.4666666667vw;
	width: 2.6666666667vw;
}

.page-voice .grid .box .txt h3 {
	font-size: 0.7843137255em;
	line-height: 1.4;
	margin-bottom: 1.6vw;
	padding-top: 1.6vw;
}

.page-voice .grid .box .txt .name {
	font-size: 0.6274509804em;
}

.page-voice .pagenav .wp-pagenavi {
	font-size: 0.9411764706em;
	gap: 5.3333333333vw;
}

.page-voice .pagenav a,
.page-voice .pagenav span {
	height: 6.9333333333vw;
	width: 6.9333333333vw;
}

.u-hidden-pc {
	display: block;
}

.u-hidden-sp {
	display: none;
}

}

/*# sourceMappingURL=style.css.map */
