
	
	
	/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

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 {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;}

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 {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;}

/* change colours to suit your needs */
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;}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;  
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;}

input, select {
    vertical-align:middle;}

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


/* Code Reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    outline: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }

/* ---------- body ---------- */
html { font-size: 62.5%;  }
body {
    text-align: center;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";}


/*---------------------------------------*/
.mv_sp {display: none;}
.HeaderSpBlk{display: none;}
.currentBlkOuterSp {display: none;}
/*---------------------------------------*/
body {
color: #333333;}

li {list-style: none;}

a {	color: #333333;
	text-decoration: none;}
img {width: 100%;}

.mainOuter {padding: 0 20px;}

.Flex {display: flex;}

.Blue {color: #4590cb;}
/*---------------------------------------*/
/*---------------------------------------*/
.HeaderBlk {
border-top: 12px solid #4590cb;
background-color: #ffffff;
box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.08);
margin-bottom: 10px;
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 1000;}

.HeaderInner {
justify-content: space-between;
align-items: center;
max-width: 1400px;
margin: 0 auto;
padding: 16px 0;}

.HeaderLogo img {width: 200px;}

/*#ff8f16*/

.ContactLink {
font-size: 1.8em;
background-color: #4590cb;
color: #ffffff;
padding: 12px 30px;
border-radius: 6px;
font-weight: bold;
letter-spacing: 0.08em;}

.ContactLink:hover {
opacity: 0.8;
transition: .3s;}

.ALink {margin-right: 24px;}
.BLink {background-color: #ff8f16;}

.HeaderOuter {padding: 0 20px;}

.HeaderMv {margin-top: 130px;}

.mv_pc img {
max-width: 1400px;
margin:  0 auto;
border-radius: 12px;}
/*---------------------------------------*/
/*---------------------------------------*/
.mainOuter {padding-top: 120px;}

.sectionBlk {
max-width: 1000px;
margin: 0 auto;
margin-bottom: 120px;
padding: 0 20px;}

.titleH1 {
font-size: 2.2em;
font-weight: 600;
margin-bottom: 120px;
line-height: 2em;
letter-spacing: 0.08em;
position: relative;}

.titleH1::after {
position: absolute;
content: "";
width: 40px;
height: 4px;
border-radius: 2px;
background-color: #4590cb;
bottom: -36px;
left: 50%;
transform: translateX(-50%);
}

.titleH1 br {display: none;}

.sizeH1 {font-size: 1.4em;}

.aboutBlkP{
max-width: 850px;
margin: 0 auto;
line-height: 2.2em;
text-align: left;
font-size: 2rem;
font-weight: 600;
letter-spacing: 0.04em;}

.colRed {color: #f26161;}
/*---------------------------------------*/
/*---------------------------------------*/
.currentBlk {
max-width: 1200px;
margin: 0 auto;
margin-bottom: 80px;
padding: 80px 20px;
background-color: #f0f0f0;}

.OutMargin {margin: 0 20px;}

.currentBlkOuter {
max-width:1000px;
margin: 0 auto;
margin-bottom: 80px;}

.BlkLast {margin-bottom: 0;}

.titleH2 {
background-color: #4590cb;
color: #ffffff;
font-size: 2em;
padding: 12px 36px;
border-radius: 8px;
display:inline-block;
font-weight: 600;
text-align: left;
margin-bottom: 20px;}

.currentBlkText {
text-align: left;
width: 45%;
margin-right: 40px;}
.current2 {
margin-right: 0;
margin-left: 40px;}

.currentBlkImg {
background-color: #ffffff;
border: 1px solid #c0c0c0;
border-radius: 10px;
padding: 3rem 0;
width: 55%;}

.currentBlkImg img {width: 100%;}

.currentBlkP {
font-size: 1.6em;
line-height: 1.8em;}
/*---------------------------------------*/
/*---------------------------------------*/
.pointBlk {padding: 0;}

.pointFlex {text-align: left;}

.pointBlkOuter {margin-bottom: 80px;}

.titleH3 {
font-size: 1.8em;
font-weight: 600;
margin-bottom: 40px;}

.pointH3 {
background-color: #4590cb;
color: #ffffff;
padding: 6px 24px;
border-radius: 50px;
margin-right: 16px;}
.titleH3 br {display: none;}

.pointP {
font-size: 1.6em;
line-height: 1.8em;}

.pointBlkText {width: 50%;}

.pointBlkImg {
width: 55%;
text-align: center;}

.pointBlkImg1 {
width: 360px;
margin:  0 auto;}
/*---------------------------------------*/
/*---------------------------------------*/
.userBlk .titleH1 {margin-bottom: 260px;}

.userBlk {
max-width: none;
width: 100%;
background-color: #ebf5ff;
padding: 80px 20px;}

.userBlkOuter {
max-width: 1000px;
margin: 0 auto;}

.userFlex {
width: 100%;
justify-content: space-between;
margin-bottom: 40px;}
.userFlexOld, .userFlexNew {
position: relative;
width: 408px;
border-radius: 12px;
padding: 24px 30px;
font-size: 1.7em;
line-height: 4em;
font-weight: 600;
box-shadow: 2px 5px 10px 2px rgba(0, 0, 0, 0.15);}

.userFlexOldImg {
position: absolute;
top: -122px;
left: 44%;
transform: translateX(-50%);}

.userFlexNewImg {
position: absolute;
top: -160px;
left: 40%;
transform: translateX(-50%);}


.userFlexOld {background-color: #ffffff;}

.userFlexNew {
background-color: #4590cb;
color: #ffffff;}

.userBlkLine1 {
border-top: dotted 4px #b6b6b6;
border-bottom: dotted 4px #b6b6b6;}
.userBlkLine2 {
border-top: dotted 4px #ffffff;
border-bottom: dotted 4px #ffffff;}

.channelImg {
background-color: #ffffff;
border-radius: 12px;
padding: 20px;}
.channelImgSP { display: none; }

.userBlkP {position: relative;}
.userBlkP::after {
    position: absolute;
    bottom: -6px;
    left: 50%;
	transform: translateX(-50%);
    content: "";
	border-style: solid;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 12px solid #d2d2d2;
  border-bottom: 0;}

.userFlexNew .userBlkP::after {  border-top: 12px solid #ffffff;}

.userBlkPYellow {color: #ffff00;}
/*---------------------------------------*/
/*---------------------------------------*/
.PossibleBlk{
position: relative;
max-width: 1000px;
margin: 0 auto;
margin-bottom: 80px;
border: 3px solid #4590cb;
border-radius: 12px;
padding: 80px;
background-color: #ffffff;
box-shadow: 2px 5px 10px 2px rgba(0, 0, 0, 0.15);}

.UlPossible {
text-align: left;
font-size: 1.7em;
line-height: 4em;
font-weight: 600;
letter-spacing: 0.04em;}

.possibleImg {
position: absolute;
bottom: 80px;
right: 20px;}

.possibleImg {width: 300px;}

.UlPossible li {
list-style:inherit;
vertical-align: middle;}

.PossibleSpan {
color: #f26161;
font-weight: 600;
font-size: 1.1em;}

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


.possibleImg {width: 140px;}

.UlPossible li {
list-style:inherit;
vertical-align: middle;
margin-bottom: 16px;}
}
/*---------------------------------------*/
/*---------------------------------------*/
.PriceBlkOuter {
max-width: 1000px;
margin: 0 auto;
position: relative;}

.PriceBlk1 {
background-color: #ffffff;
border-radius: 12px;
padding: 40px;
margin-bottom: 60px;
box-shadow: 2px 5px 10px 2px rgba(0, 0, 0, 0.15);}

.PriceBlk {
max-width: none;
width: 100%;
background-color: #ebf5ff;
padding: 80px 20px;}

.PriceBlkH3 {
font-size: 2em;
text-align: left;
font-weight: 600;
margin-bottom: 40px;}


.PriceTable {
margin:  0 auto;
width: 100%;}
.PriceTableSP { display: none; }

.PriceTableTh, .PriceTableTd{
font-size: 1.6em; 
border: 1px solid #555555;
line-height: 1.8em;
vertical-align: middle;
letter-spacing: 0.04em;}

.PriceTableNone {border: 0px;}

.PriceTableTh {
background-color: #ECECEC;
padding: 10px 0;}
.PriceTableTd {background-color: #ffffff;}

.PriceTableTd br {display: none;}

.fontwaight{font-weight: 600;}

.PriceBlk2 {
background-color: #ffffff;
border-radius: 12px;
padding: 40px;
box-shadow: 2px 5px 10px 2px rgba(0, 0, 0, 0.15);}

.PriceBlkOuter2H3{
font-size: 2em;
font-weight: 600;
color: #4590cb;
text-align: left;
margin-bottom: 40px;}

.PriceBlk2P {
font-size: 1.6em;
text-align: left;
line-height: 1.8em;
margin-bottom: 20px;}

.PriceTable2 {margin-bottom: 40px;}
.PriceTable2 td {
width: 30%;}

.PriceBlk2H4 {
text-align: left;
font-size: 1.8em;
margin-bottom: 20px;
font-weight: 600;}

.PriceBlk2P2 {
text-align: left;
font-size: 1.6em;
line-height: 1.8em;}
/*---------------------------------------*/
/*---------------------------------------*/
.footerBlk {
font-size: 1.6em;
margin-bottom: 120px;}

.footerUl {justify-content: center;}

.footerLi {
margin-right: 30px;
padding: 4px 0;
padding-right: 30px;
border-right: 1px solid #B1B1B1;}

.footerLi:last-of-type {
margin-right: 0;
padding-right: 0;
border-right: none;}

/* ---------- 2026-03-02 ADDED ---------- */
.stb1 { margin-top: 4em; color: #4590cb; }
.supTxt { vertical-align: super; }
.meoPrice { color: #f26161; }
p.sup_note { text-align: left; margin: 1em 0; font-size: 1.6em; color: #f26161; }

div.op_plan_note {
	border: 1px solid #4590cb;
	padding: 2rem; }
.onlySP { display: none; }
span.inTaxPrice { font-size: 0.8em; }

/* ---------- 2026-03-25 ADDED ---------- */
ol.contract_note {
	margin-left: 2rem;
	margin-top: 2rem;
	text-align: left;
	font-size: 1.6em; }
ol.contract_note li { margin-bottom: 0.7rem; list-style: disc!important; }
