@charset "utf-8";

/* CSS Document */
body {
	margin: 0;
	font-size: 14px;
}
img {max-width: 100%;}
.wrapper section {
	position: relative;
	padding: 70px 0 0;
	box-sizing: border-box;
	text-align: center;
}
#header {
    margin: 0 0 0 0 !important;
}
.wrapper section>.inner {
	width: 94%;
	max-width: 1200px;
	margin: 0 auto;
}

h2 {
	font-size: 32px;
	display: inline-block;
	margin: 0 auto 45px;
	padding: 0 0 50px;
	position: relative;
}

h2::before {
	position: absolute;
	bottom: 0;
	left: calc(50% - 50px);
	margin: auto;
	content: "";
	width: 100px;
	border-bottom: solid 2px #000;
}
.for_sp {
	display: none;
}
#box_ttl .txt_st span {
	font-size: 133%;
	color: #cc0000;
}
.txt_left_sp span{font-weight: bold;}
.txt_red {
	color: #cc0000;
	font-weight: bold;
}

.txt_16 {
	font-size: 16px;
}
.txt_24 {
	font-size: 24px;
}

.mgt_15 {
	margin-top: 15px !important;
}

.mgt_20 {
	margin-top: 20px !important;
}

.mgt_25 {
	margin-top: 25px !important;
}

.mgt_30 {
	margin-top: 30px !important;
}
.mgt_35 {
	margin-top: 35px !important;
}
.mgt_40 {
	margin-top: 40px !important;
}


section#box_mv {
	position: relative;
	width: 100vw;
	margin: auto;
	overflow: hidden;
	border-bottom: solid 1px #cccccc;
	padding: 70px 0 ;
}

section#box_mv:before {
	content: "";
	position: absolute;
	top: -200vh;
	bottom: 0;
	left: -200vw;
	right: 0;
	background: url("/img/usr/freepage/welcome/bg.png") repeat top left;
	transform: rotate(-30deg);
	z-index: 1;
	width: 500vw;
	height: 500vh;
}
a.link_site,a.link_outside {
	color: #000;
	display: inline-block;
	padding: 0 12px 1px 4px;
	position: relative;
	text-decoration: none;
}
a.link_site span,a.link_outside span {
	position: relative;
	border-bottom: solid 1px #000;
}
a.link_site:hover span,a.link_outside:hover span{
	border-bottom: none;
}
a.link_site::after {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 0;
	width: 4px;
	height: 4px;
	border-top: 2px solid #966e10;
	border-right: 2px solid #966e10;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
a.link_outside::after {
content: "";
    position: absolute;
    top: 50%;
    width: 10px;
    height: 10px;
    background: url(/img/usr/common/mymenu_new_window.png) center center no-repeat;
    -webkit-background-size: 10px 10px;
    background-size: 10px 10px;
    display: inline-block;
    margin-top: -5px;
    margin-left: 5px;
}
a.link_site.btn_other_w::after {
	content: none !important;
}
.btn_site {
	margin: 0 auto 20px;
	margin: 0 auto;
	display: inline-block;
	width: 90%;
	max-width: 356px;
	z-index: 2;
	position: relative;
}

.btn_site a {
	display: inline-block;
	border: solid 1px #000000;
	border-radius: 5px;
	background: #fff;
	width: 100%;
	line-height: 48px;
	text-decoration: none;
	color: #000;
	position: relative;
}

.btn_site a:hover {
	background: #fbf9f4;
}

.btn_site a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 13px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #e81e1e;
	border-right: 2px solid #e81e1e;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.btn_site_red {
	margin: 22px auto 0;
	width: 94%;
	max-width: 544px;
}

.btn_site_red a {
	display: inline-block;
	border-radius: 5px;
	background: #e50000;
	width: 100%;
	line-height: 72px;
	text-decoration: none;
	color: #fff;
	position: relative;
	font-weight: bold;
	font-size: 20px;
}

.btn_site_red a:hover {
	background: #cc3333;
}
/*
.btn_site_red a::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 8px solid #ffffff;
  border-right: 0;
	display: inline-block;
	margin-top: -5px;
}
*/
.btn_other_w {
	position: relative;
	padding-right: 20px;
}

.btn_other_w::after {
	content: "";
	position: absolute;
	top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    background: url("/img/usr/common/new_window_w.png") center center no-repeat; -webkit-background-size: 10px 10px; background-size: 10px 10px;
    display: inline-block;
    margin-top: -5px;
}

#box_ttl_container {
	margin: 0 auto 80px;
}
#box_ttl {
	border: solid 2px #c8ae61;
	background: #fff;
	padding: 55px 40px;
	width: 70%;
	max-width: 650px;
	margin: 0 auto;
	box-sizing: border-box;
	z-index: 2;
	position: relative;
}

#box_ttl>* {
	margin: 0 auto;
	display: inline-block;
}

.txt_st {
	font-weight: bold;
}

.clm_3 {
	display: flex;
	justify-content: space-between;
	margin: 60px auto 58px;
	position: relative;
}

.clm_3>div {
	width: 33%;
	box-sizing: border-box;
}

.clm_3>div h3 {
	font-size: 20px;
	font-weight: bold;
	display: flex;
    align-items: center;
	justify-content: space-around;
	margin: 0;
    height:120px;
}
.clm_3>div:last-child h3>span {
	display: inline-block;
	line-height: 2.0;
}
.clm_3>div h3>span>span {
	font-size: 14px;
	font-weight: normal;
	display: inline-block;
	line-height: 1.5;
}
.clm_3>div h3 {
	background: #fba296;
}
.clm_3>div:first-child h3 {
	background: #dfe2ea;
}
.clm_3>div:last-child h3 {
	background: #fcd390;
}
.clm_3>div>div {
	width: 90%;
	margin: 0 auto;
}
.clm_3>div .card_ph{
	width: 80%;
	max-width: 200px;
	margin: 34px auto 30px;
}
.clm_3>div:last-child .card_ph{
	width: 84%;
	max-width: 168px;
	margin: 14px auto 30px;
}
.clm_3>div .mile{
	height: 380px;
}
.clm_3 input {
  display: none; /*チェックボックスを隠す*/
}
.clm_3>div label.acc_btn{
	font-size: 24px;
	width: 94vw;
	max-width: 1200px;
	position: absolute;
	left: 0;
	cursor: default !important;
	font-weight: normal !important;
}
.clm_3>div label.acc_btn::before{
	position: absolute;
	top: 12px;
	left: 0;
	margin: auto;
	content: "";
	width: 100%;
	border-bottom: solid 2px #999999;
}
.clm_3>div label.acc_btn{
	position: absolute;
	left: 0;
	background: #fff;
	display: inline-block;
	padding: 0 30px 0 70px;
	margin: 0;
	box-sizing: border-box;
	z-index: 200;
}
.clm_3>div:first-child label.acc_btn,
.clm_3>div:last-child label.acc_btn{
	visibility: hidden;
}
.clm_3>div label.acc_btn span{
	background: #fff;
	display: inline-block;
	position: relative;
	padding: 0 30px 0 70px;
	margin: 0;
	box-sizing: border-box;
	z-index: 200;
}
.clm_3>div .acc_btn span::before{
	position: absolute;
	top: 3px;
	left: 30px;
	content: "";
	width: 24px;
	height: 24px;
	background: url("/img/usr/freepage/welcome/ico_ex.png") no-repeat top left;
	background-size: cover;
}
.clm_3>div .more{
	margin: 120px 0 0;
}


.clm_2 {
	display: flex;
	justify-content: space-between;
	max-width: 980px;
	margin: 35px auto 58px;
}

.clm_2>div {
	width: 49%;
	box-sizing: border-box;
	padding: 30px;
	background: #f5f5f5;
}
.clm_2 h3 {
	max-width: 134px;
	margin: 0 auto;
	line-height: 1;
}
.clm_2 p {
	margin: 30px 0 35px;
	height: 2.6em;
}
.clm_2 p span {
	font-weight: bold;
}

.clm_2 fig {
	max-width: 278px;
	margin: 0 auto;
	display: inline-block;
}

.list_note{
	padding:0;
}
.list_note li{
	list-style: none;
	text-align: left;
	padding-left: 0.8em;
	text-indent: -0.8em;
}
.list_note li::before{
	content: "※";
}
.list_note li a.link_outside{
	margin-left: 0.8em;
}
.convertion {
	margin-bottom: 70px;
}
.convertion h3 {
	font-size: 24px;
	font-weight: bold;
	margin: 75px auto 0;
}

/*0613追記*/

.flex_layout {
    display: flex;
    justify-content: center;
	align-items: center;
}

.txt_left {
    text-align: left;
}

.txt_left span{font-weight: bold;}

.flex_layout p {
    margin-left: 20px;
}

.flex_layout img {
	width: 80px;
    height: fit-content;
}