@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/*general CSS*/

/* form additional */
.layout_form { max-width: 800px !important; margin: 100px auto;}

/* japanese fonts */
.fontfamily_shingr { font-family: "Shin Go Regular"!important; }
.fontfamily_shingm { font-family: "Shin Go Medium"!important; }
.fontfamily_midashimb101b { font-family: "Midashi Go MB31"!important; }
.fontfamily_gothicmb101b { font-family: "Gothic MB101 Bold"!important; }
.fontfamily_ryuminm { font-family: "Ryumin Medium KL"!important; }
.fontfamily_ryuminr { font-family: "Ryumin Regular KL"!important; }
.fontfamily_midashiminma31 { font-family: "Midashi Min MA31"!important; }
.fontfamily_a1mincho { font-family: "A1 Mincho"!important; }

/* English Fonts */
.fontfamily_sansserif_en { font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }
.fontfamily_sansserif_bold_en { font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; font-weight: bolder;}

.fontfamily_didot { font-family: "Arial", sans-serif; }
.fontfamily_didot_b { font-family: "Arial", sans-serif; font-weight: bold; }

.clear { clear: both !important; }

/* margin */
.mt0 { margin-top:0px !important; }
.mt5 { margin-top:5px !important; }
.mt10 { margin-top:10px !important; }
.mt20 { margin-top:20px !important; }
.mt30 { margin-top:30px !important; }
.mt40 { margin-top:40px !important; }
.mt50 { margin-top:50px !important; }
.mt60 { margin-top:60px !important; }
.mt70 { margin-top:70px !important; }
.mt80 { margin-top:80px !important; }
.mt90 { margin-top:90px !important; }
.mt100 { margin-top:100px !important; }
.mt120 { margin-top:120px !important; }
.mt140 { margin-top:140px !important; }

.mt80pc { margin-top:80px !important; }
.mt80sp { margin-top:0px !important; }

.mtm10 { margin-top:-10px !important; }
.mtm20 { margin-top:-20px !important; }
.mtm25 { margin-top:-25px !important; }
.mtm30 { margin-top:-30px !important; }
.mtm40 { margin-top:-40px !important; }
.mtm60 { margin-top:-60px !important; }
.mtm80 { margin-top:-80px !important; }
.mtm100 { margin-top:-100px !important; }

.mtmsp10 { margin-top:0px !important; }
.mgtmpc20 { margin-top:-20px !important; }

.mb0 { margin-bottom:0px !important; }
.mb05 { margin-bottom:5px !important; }
.mb10 { margin-bottom:10px !important; }
.mb20 { margin-bottom:20px !important; }
.mb30 { margin-bottom:30px !important; }
.mb40 { margin-bottom:40px !important; }
.mb50 { margin-bottom:50px !important; }
.mb60 { margin-bottom:60px !important; }
.mb80 { margin-bottom:80px !important; }
.mb100 { margin-bottom:100px !important; }

.ml0 { margin-left:0px !important; }
.ml10 { margin-left:10px !important; }
.ml20 { margin-left:20px !important; }
.ml30 { margin-left:30px !important; }
.ml40 { margin-left:40px !important; }
.ml50 { margin-left:50px !important; }
.ml60 { margin-left:60px !important; }

.mr0 { margin-right:0px !important; }
.mr10 { margin-right:10px !important; }
.mr20 { margin-right:20px !important; }
.mr30 { margin-right:30px !important; }
.mr40 { margin-right:40px !important; }
.mr50 { margin-right:50px !important; }
.mr60 { margin-right:60px !important; }

.mricon { margin-right:5px !important; }

/* padding */
.padt50 { padding-top:50px !important; }
.padt75 { padding-top:75px !important; }
.padt100 { padding-top:100px !important; }

.padb50 { padding-bottom:50px !important; }
.padb75 { padding-bottom:75px !important; }
.padb100 { padding-bottom:100px !important; }

.padlr40 { padding-left:40px !important; padding-right:20px !important; }
.padlr20 { padding-left:20px !important; padding-right:20px !important; }

.f12 { font-size: 12px !important; }
.f13 { font-size: 13px !important; }
.f14 { font-size: 14px !important; }
.f15 { font-size: 15px !important; }
.f16 { font-size: 16px !important; }
.f17 { font-size: 17px !important; }
.f18 { font-size: 18px !important; }
.f20 { font-size: 20px !important; }
.f22 { font-size: 22px !important; }
.f24 { font-size: 24px !important; }
.f24fix { font-size: 24px !important; }
.f26 { font-size: 26px !important; }
.f28 { font-size: 28px !important; }
.f30 { font-size: 30px !important; }
.f32 { font-size: 32px !important; }
.f34 { font-size: 34px !important; }
.f38 { font-size: 38px !important; }
.f44 { font-size: 44px !important; }
.f50 { font-size: 50px !important; }
.f60 { font-size: 60px !important; }

.displaynone { display: none !important; }

/* color */
.fwhite { color: #FFFFFF !important; }
.fyellow { color: #F3AE37 !important; }
.fred {
    color: #C6171E !important;
}
.fgray { color: #999999 !important; }
.fblue { color: #43B5D6 !important; }
.fdblue { color: #0763C9 !important; }
.fblack { color: #000000 !important; }
.faablue { color: #221FA2 !important; }
.fsky {
    color: #2493C4 !important;
}

.fbold { font-weight: bold !important; }
.fnormal { font-weight: normal !important; }

.center { text-align: center !important; }
.left { text-align: left !important; }
.right { text-align: right !important; }

.f100vw { font-size: 1vw !important; }
.f125vw { font-size: 1.25vw !important; }
.f150vw { font-size: 1.5vw !important; }
.f175vw { font-size: 1.75vw !important; }
.f200vw { font-size: 2vw !important; }
.f225vw { font-size: 2.25vw !important; }
.f250vw { font-size: 2.5vw !important; }
.f275vw { font-size: 2.75vw !important; }
.f3vw { font-size: 3vw !important; }

h3.story01 { color:#F9666D;font-size: 20px !important; }
h3.story02 { color:#F9666D;font-size: 20px !important; }

.lh125 { line-height:1.25 !important; }
.lh150 { line-height:1.5 !important; }
.lh175 { line-height:1.75 !important; }
.lh200 { line-height:2 !important; }
.lh250 { line-height:2.5 !important; }

.w5p { width: 5% !important; }
.w10p { width: 10% !important; }
.w15p { width: 15% !important; }
.w20p { width: 20% !important; }
.w25p { width: 25% !important; }
.w30p { width: 30% !important; }
.w35p { width: 35% !important; }
.w40p { width: 40% !important; }
.w45p { width: 45% !important; }
.w50p { width: 50% !important; }
.w55p { width: 55% !important; }
.w60p { width: 60% !important; }
.w65p { width: 64% !important; }
.w70p { width: 70% !important; }
.w75p { width: 75% !important; }
.w80p { width: 80% !important; }
.w85p { width: 85% !important; }
.w90p { width: 90% !important; }
.w95p { width: 95% !important; }
.w100p { width: 100% !important; }

hr.solidline1 { clear: both; border-top: solid #F99A9E 1px;  }
hr.solidline2 { clear: both; border-top: solid #F99A9E 2px;  }
hr.solidline3 { clear: both; border-top: solid #F99A9E 3px;  }
hr.dotedline1 { clear: both; border-top: dotted #F99A9E 1px;  }
hr.dotedline2 { clear: both; border-top: dotted #CCCCCC 1px;  }

.imgborder { border:solid 1px #DDD !important; }

.pcw200 { width: 200px !important; }
.pcw250 { width: 250px !important; }
.pcw275 { width: 275px !important; }
.pcw300 { width: 300px !important; }
.pcw360 { width: 360px !important; }
.pcw700 { width: 700px !important; }
.pcw800 { width: 800px !important; }

.brpc { display: block !important; }
.brsp { display: none !important; }
.pc_right { text-align: right !important; }
.pc_center { text-align: center !important; }
.sp_center { text-align: left !important; }
.pc_center_testimonials { text-align: center !important; }

a.anchoradd {
   display: block;
   margin-top: -80px;
   padding-top: 80px;
}

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

.pcmax400 { max-width: 400px; }
.pcmax500 { max-width: 500px; }
.pcmax600 { max-width: 600px; }

.whiteborder { border: solid #FFF 1px; }

@media (max-width: 1199.98px) {

.mt80pc { margin-top:0px !important; }
.mt80sp { margin-top:80px !important; }
.mtmsp10 { margin-top:-10px !important; }
.mgtmpc20 { margin-top:0px !important; }

}

@media (max-width: 767.98px) {

.spw70p { width: 70% !important; }
.spw200 { width: 200px !important; }

.brpc { display: none !important; }
.brsp { display: block !important; }
.pc_right { text-align: left !important; }
.pc_center { text-align: left !important; }
.sp_center { text-align: center !important; }

.resfloat { float:none; }

.f24 { font-size: 18px !important; }
.pc { display: none !important; }
.sp { display: block !important; }

.pcmax400 { max-width: 100%; }
.pcmax500 { max-width: 100%; }
.pcmax600 { max-width: 100%; }

}

@media (max-width: 479.98px) {
.pc_center_testimonials { text-align: left !important; }
}

.sp_sitename {
   display: none !important;
}

@media (max-width: 767.98px) {
.sp_sitename {
   display: block !important;
   position: absolute;
   top: 4px;
   left: 60px;
   font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
   color: #221FA2 !important;
   font-size: 24px !important;
}
}

/*button CSS*/
.btn-primary {
	color: #fff;
	background-color: #C6171D !important;
	border-color: #C6171D !important;
}

.btn-primary:hover {
	color: #fff;
	background-color: #389962;
	border-color: #34905c;
}

.btn-primary:focus, .btn-primary.focus {
	box-shadow: 0 0 0 0.2rem rgba(66, 181, 116, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
	color: #fff;
	background-color: #C6171D;
	border-color: #C6171D;
}

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
	color: #fff;
	background-color: #34905c;
	border-color: #318656;
}

.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
	box-shadow: 0 0 0 0.2rem rgba(66, 181, 116, 0.5);
}

/*form CSS*/

.submitbutton{
    display:block;
    width:240px;
    height:60px;
    line-height:1;
    text-decoration: none;
    background:#C6171D;
    text-align:center;
    border:5px solid #FFDB69;
    color:#FFFFFF;
    font-size:20px;
    font-weight:bold;
    border-radius:35px;
    -webkit-border-radius:35px;
    -moz-border-radius:35px;
    transition: all 0.5s ease;
}

.required{
    color: #C6171D!important;
}


/*テーブル*/

.tbl-r01 {
   border-collapse: collapse;
   text-align: center;
   line-height: 1.5;
   border: 1px solid #ccc;
}

.tbl-r01 th {
   text-align: center;
   padding: 10px;
   font-weight: bold;
   border-top: 1px solid #ccc;
   border-right: 1px solid #ccc;
   border-bottom: 1px solid #ccc;
   background-color: #CBEBDA;
   color: #000000;
}

table.tbl-r02  {
   width: 100%!important;
}

.wpcf7 input,
.wpcf7 textarea {
   width: 100%!important;
}

.tbl-r02 th {
   width: 35%;
   background-color: #E9F4FC;
   border: solid 1px #ccc;
   padding: 10px;
   line-height:1.75;
	font-size: 15px;
	font-family: sans-serif;
	font-weight: normal;
}

.tbl-r02 td {
   border: solid 1px #ccc;
    padding: 10px;
   line-height:1.75;
}

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

table.tbl-r02  {
   width: 100%!important;
}

 .last td:last-child {
   border-bottom: solid 1px #ccc;
   width: 100%;
  }

.tbl-r02 {
   width: 80%;
  }
	
 .tbl-r02 th,
 .tbl-r02 td {
   border-bottom: none;
   display: block;
   width: 100%;
   line-height:1.5;
}

}

/*03は01のpadのなしバージョン*/
.tbl-r03 {
   border-collapse: collapse;
   text-align: center;
   line-height: 1;
   border: 1px solid #ccc;
}

.tbl-r03 th {
   text-align: center;
   padding: 2px;
   font-weight: bold;
   border-top: 1px solid #ccc;
   border-right: 1px solid #ccc;
   border-bottom: 1px solid #ccc;
   background-color: #E9F4FC;
   color: #000000;
}

/*04は02のth白抜きバージョン*/
.tbl-r04 th {
   background-color: #579876;
   border: solid 1px #ccc;
   border-bottom: solid 1px #fff;
   color: #000;
   padding: 10px;
   line-height:1.75;
   font-weight:bold;
}

.tbl-r04 td {
   border: solid 1px #ccc;
   padding: 10px;
   line-height:1.75;
}

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

.last td:last-child {
   border-bottom: solid 1px #ccc;
   width: 100%;
}

.tbl-r04 {
   width: 80%;
}

.tbl-r04 th,
.tbl-r04 td {
   border-bottom: none;
   display: block;
   width: 100%;
   line-height:1.5;
}

}

input[type="submit"] {
   appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
   font-size: 16px;
   font-weight: bold;
   width: 200px;
   padding: 6px 15px;
   border-radius: 10px;
   background-color: #04384c;
   border: none;
   color: #fff;
   cursor: pointer;
   font-family: sans-serif;
}

span.wpcf7-spinner {
  display: none;
}


/*テーブルend*/


/*PCSP*/
.brpc { display: block !important; }
.brsp { display: none !important; }
.pc_right { text-align: right !important; }
.pc_center { text-align: center !important; }
@media (max-width: 600px) {
.brpc { display: none !important; }
.brsp { display: block !important; }
.pc_right { text-align: left !important; }
.pc_center { text-align: left !important; }
}
/*PCSPend*/


.hissu { color: #DD4248 !important; font-size: 80% !important; }
.font_small { font-size: 90% !important; }
.c-infoBar__text -flow-off { text-align: right !important; }

/*ヘッダーボタンのデザイン*/
.topbar { background-color: #000!important; height: 36px; }

.headbutton {
   float: right;
   position: relative;
   display: inline-block;
   text-decoration: none;
   margin-top: 2px;
   padding: 0px 6px;/*文字の上下左右の余白*/
   color: #FFF !important;/*文字の色*/
   background: #0A6536;/*ボックスの色*/
   border: solid 1px #FFF;/*周りの線色*/
   /*border-radius: 4px 4px 4px 4px;角の丸み 左上 右上 右下 左下の順*/
   font-weight: bold;/*文字の太さ*/
   font-size: 14px;/*文字の大きさ*/
   top: 0px;/*上から-●pxの場所に配置*/
   /*right: 60px;右から60pxの場所に配置*/
}

.headbutton a {color:#FFF}

.selectlink{
	float: right;
   position: relative;
	cursor: pointer;
	border-radius: 0px;
   margin: 2px 0px 0px;
   padding: 2px 6px;/*文字の上下左右の余白*/
	color: #FFF !important;/*文字の色*/
   border: solid 1px #FFF;/*周りの線色*/
   background-color: #0A6536;/*ボックスの色*/
	font-size: 14px;/*文字の大きさ*/
}

.selectlink:hover{
   border: 1px #333 solid;
   padding: 2px 6px;/*文字の上下左右の余白*/
	color: #FFF !important;/*文字の色*/
   border: solid 1px #FFF;/*周りの線色*/
   background-color: #0A6536;/*ボックスの色*/
	font-size: 14px;/*文字の大きさ*/
}

